A. linux下如何一条命令删除上万个文件。 我记得格式是find |rm
find / -name *.log | xargs -n 1000 rm -f
因为rm 接收参数的数量是有限的, 所以每次传 1000个参数给他,这样可以满足你的需求。
补充一点,这种写法其实不是特别严谨,因为如果日志文件的命名有特殊字符的话,上面命令将会对特殊字符文件识别不了。
严谨的写法。
find / -name '*.log' -print0 |xargs -0 -n 1000 rm -f
这里前面的print0 和 后的-0 都是对特殊字符进行处理,也就是说他会认识如"aa bb cc " 这种文件名,多的不说了,不知你能否看明白。
B. Linux 下如何处理包含空格和特殊字符的文件
使用通配符 ? 和*代替就行,
例如a a中有一个空格可以用专a?a来代替属.
a a中有多个空格可以用 a*a来代替
或者使用转义字符 \加一个空格来表示文件名中的一个空格,有几个空格就写几个 \和空格
C. Linux中,怎样修改文件名
Linux中修改文件名使用mv命令,它可以将源文件重命名为目标文件,或将源文件移动至指定目录。
1、mv命令的用法
mv[选项]...[-T]源文件目标文件
或:mv[选项]...源文件...目录
或:mv[选项]...-t目录源文件...
2、比如在当前目录下有个test.txt的文件 ,要修改文件名为good.txt,则可以执行
mvtest.txtgood.txt
--backup=<备份模式>:若需覆盖文件,则覆盖前先行备份;
-b:当文件存在时,覆盖前,为其创建一个备份;
-f:若目标文件或目录与现有的文件或目录重复,则直接覆盖现有的文件或目录;
-i:交互式操作,覆盖前先行询问用户,如果源文件与目标文件或目标目录中的文件同名,则询问用户是否覆盖目标文件。用户输入”y”,表示将覆盖目标文件;输入”n”,表示取消对源文件的移动。这样可以避免误将文件覆盖。
--strip-trailing-slashes:删除源文件中的斜杠“/”;
-S<后缀>:为备份文件指定后缀,而不使用默认的后缀;
--target-directory=<目录>:指定源文件要移动到目标目录;
-u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作。
D. linux命令 sed 请问有哪位大大知道这个sed 命令是什么意思吗 sed 's/\//\\\//g'
截取或修改复字符串,打印到屏幕上。制
使用方法:sed 参数 '动作' 动作对象
如果用-i参数将修改文档的内容,你的sed 's/\//\\\//g'这个我举一个类似的再分析你的。
sed 's/old/new/g’ ***
这个就是把***文档里面的old这个词换成new这个词。
你的sed 's/\//\\\//g'里面既是把,/换成\\/。s/\//是一部分/\\\//g又是一部分,s后面的//之间就是要替换的词语和上面的old类似,由于/有特殊定义,所以用\转意成普通符号/,/\\\//g从第一符号到g前面的/之间就为替换old的new,为\\/前面两个\就是\没有特殊意义所以为\\,后面g前面的第二个/由于有特殊意义所以用\来转意,所以new为\\/。在s/old/new/g里面的/为固定格式所需要的,所以想打印出/来的话,要用\来转意,linux特殊字符转意都用\。
详细的参数信息用man page,这个是比不可少的,因为一个人不可能把那些东西全部记得,如果你硬要记还不如记唐诗三百首呢。只要知道这个命令或是这个工具的工作原理,使用方法自然就明了,要用到的时候查一下即可,没有必要和自己过不去。
E. Linux中删除含特殊字符文件名的文件
很简单,把要删除的文件名引号引起来,最好加上 -f 强制删除参数,刚才做了个试验:
望采纳!
F. 如何删除文件名中带特殊符号的文件
你可以在这个文件下,这个文件是缓存文件,我想也没有用了吧,新建一个扩展名为bat的文件,比如del.bat,然后右键文件,编辑,然后输入del
*.*就可以了,然后双击执行,这个文件夹下的所有文件就被删除了
G. Linux主机文件管理里怎么删除有特殊字符的文件夹啊
用rm命令删
rm -ir *
只有要删的输入y删除,其它输入n保留
H. Linux如何移动复制删除带特殊文字符前缀(
在Linux系统中,许多元字符,如分号(semicolon),空格(space),反斜线(backslash),美元符号(dollar sigh),问号(question mark),星号(asterisk) 通常被解释为命令,-(dashes)或者--被解释为命令的选项,通过以下的方式就可以复制、移动、删除带-或者--的文件,:
1、首先,创建文件,创建前缀带-或--文件不能直接使用touch命令,因为会被解释为命令的选项,所以得用追加的形式创建:
[root@linuxidc tmp]# echo >-foo.txt
[root@linuxidc tmp]# echo >-bar.txt
创建文件后,如果使用ls命令尝试通配符的方式列出文件,则会出现以下报错:
[root@linuxidc tmp]# ls -l *.txt
ls: invalid option -- '.'
Try 'ls --help' for more information.
需要在命令加入--分界符选项,分隔开选项和参数:
[root@linuxidc tmp]# ls -l -- *.txt
-rw-r--r--. 1 root root 2192022 Jan 9 09:03 137k.txt
-rw-r--r--. 1 root root 1 Jan 9 16:36 -bar.txt
-rw-r--r--. 1 root root 1 Jan 9 16:36 -foo.txt
相对应的,复制与移动文件的命令使用如下:
[root@linuxidc tmp]# cp -- -foo.txt /opt/
[root@linuxidc tmp]# mv -- -bar.txt /opt/