首先感谢各位大佬观看以及解答(鞠躬感谢各位大佬.jpg )
其次阐述一下我的问题: (前提:非专业程序员『特小白的那种』,剪辑音频行当,想要写一个脚本替代重复工作)
脚本功能如下: 1.获取文件名称 2.获取当前时间 3.时间+文件名称为文字 4.检查当前目录下是否有相同目录 5.如果没有则执行创建,如果有相同名称文件目录则提示后返回第一步操作 6.创建文件夹后打开该文件夹 7.在时间+文件名称目录下创建固定目录 8.结束进程
date +%Y%m%d
"
touch "${time}${name}"问题如下: 请问各位大佬为什么我的脚本代码在终端执行时执行到 echo "$name"就结束了? 这样创建变量文件夹不对吗? 请问有什么好的 shell 教程推荐吗?
感谢各位大佬阅读及回复(不知道为什么排版有些混乱,烦请见谅)
1
churchmice 2021-07-04 01:04:06 +08:00 via Android 1
创建文件夹用 mkdir
|
2
toaruScar 2021-07-04 01:06:33 +08:00 via iPhone
啊?不知道是不是排版的问题,不过多条塞到一行的时候要用分号隔开不同的命令
|
3
toaruScar 2021-07-04 01:16:27 +08:00
把命令的输出存到变量里的时候要么用
var=$(command-name-here) var=$(command-name-here arg1) var=$(/path/to/command) var=$(/path/to/command arg1 arg2) 要么用反引号(“`”) var=`command-name-here` var=`command-name-here arg1` var=`/path/to/command` var=`/path/to/command arg1 arg2` |
4
cx524541577 OP @toaruScar 感谢大佬回复,echo 输出是因为测试,后期就不需要 echo 名称了,就直接时间+名称创建文件夹了
鞠躬感谢回复! |
5
cx524541577 OP @churchmice 感谢大佬回复,mkdir 提示这个( line 7: str1: command not found
usage: mkdir [-pv] [-m mode] directory ...)什么问题呢,mkdir -pv $(str1)也不好使。感谢大佬回复 #!/bin/bash read -p "请输入工程名称:" files echo $files time="`date +%Y%m%d`" str1="$time $name" mkdir $(str1) |
6
toaruScar 2021-07-04 01:40:03 +08:00 1
@cx524541577 最后“mkdir $(str1)”里的 str1 为什么要用$(...) 包起来? str1 是变量又不是命令
|
7
Fu4ng 2021-07-04 01:40:22 +08:00 1
#!/bin/bash
read -p "请输入工程名称:" files echo $files time="`date +%Y%m%d`" str1="$time-$files" mkdir $str1 |
8
cx524541577 OP @Fu4ng
感谢大佬回复!已完成目的,虽然没完全完成 |
9
cx524541577 OP @toaruScar 感谢大佬回复!已完成目的,虽然没完全完成
|
10
cx524541577 OP @churchmice 感谢大佬回复!已完成目的,虽然没完全完成
|
11
sunls 2021-07-05 09:23:44 +08:00
|