Bash 文件被删除而不是重命名
我想重命名一些文件以添加Bash 文件被删除而不是重命名,bash,Bash,我想重命名一些文件以添加.md扩展名。我运行了下面的命令,但是文件不见了。我正在努力理解为什么 for i in $(ls); do cp "$i" "$(i)".md; done 运行命令i,并将结果放入字符串中。由于您没有i命令,这意味着您的主命令可以写成: for i in $(ls); do cp "$i" .md; done 如果文件夹中有两个文件,比如说a.txt和b.txt,这将有效地执行: cp a.txt .md cp b.txt .md 这不会删除任何内容,但会将这两个
.md
扩展名。我运行了下面的命令,但是文件不见了。我正在努力理解为什么
for i in $(ls); do cp "$i" "$(i)".md; done
运行命令i
,并将结果放入字符串中。由于您没有i
命令,这意味着您的主命令可以写成:
for i in $(ls); do cp "$i" .md; done
如果文件夹中有两个文件,比如说a.txt
和b.txt
,这将有效地执行:
cp a.txt .md
cp b.txt .md
这不会删除任何内容,但会将这两个文件复制到名为.md
的文件中。这种情况发生两次,因此只有最后一次幸存下来
可能此隐藏文件未显示,因为以
开头的文件有时是隐藏的
运行命令i
,并将结果放入字符串中。由于您没有i
命令,这意味着您的主命令可以写成:
for i in $(ls); do cp "$i" .md; done
如果文件夹中有两个文件,比如说a.txt
和b.txt
,这将有效地执行:
cp a.txt .md
cp b.txt .md
这不会删除任何内容,但会将这两个文件复制到名为.md
的文件中。这种情况发生两次,因此只有最后一次幸存下来
可能这个隐藏的文件没有显示出来,因为以
开头的文件有时是隐藏的。顺便说一句,请注意,for i in$(ls)
不是很安全:如果任何文件名包含任何有趣/不寻常的字符(例如空格),它将给出奇怪的结果。相反,您应该在*中为i编写。(有关更多信息,请参阅。)顺便说一句,请注意,$(ls)中i的不是很安全:如果任何文件名包含任何有趣/不寻常的字符(例如空格),它将给出奇怪的结果。相反,您应该在*
中为i编写。(有关详细信息,请参阅。)