增加
1.增加目录
mkdir 文件夹名称 # 在当前目录下新增文件夹
mkdir /var/www/web/newdir # 在路径 /var/www/web/ 下增加 目录 newdir
- 新增文件
# 在命令行直接创建文件
dd if=... of=... bs=... count=... # if表示输入文件,of表示输出文件,bs默认指定了以字节为单位的块大小(单位有字节c,字w,块B,千字节m,兆字节m,吉字节G),count表示需要被复制的块数;
touch filename; # touch使用一个并不存在的文件名作为参数,创建空白文件
# 在本地编辑器里创建好文件,然后上传到指定目录下更为常用,只是需要安装一些上传文件的 yum 包
删除 (注:在linux没有回收站,在试用rm命令的时候,一定要小心些,删除之后就无法再恢复了。)
rm [option] dirname
# option 有以下选项
# -i 删除前逐一询问确认。
# -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
# -r 将目录及以下之档案亦逐一删除。
rm -r Finished # 将 Finished 子目录及子目录中所有档案删除。
rm test.txt # 是否删除 一般文件 "test.txt"? y
rm homework # 无法删除目录"homework": 是一个目录
rm -r homework # 是否删除 目录 "homework"? y
rm -r * # 删除当前目录下的所有文件及目录
rm -rf 要删除的文件名或目录 # 删除当前目录下的所有文件及目录,并且是直接删除,无需逐一确认
rm -rf test.txt
rm -rf test/
查找
1.find 命令用于查找文件或目录
find ./ -type f -name ‘文件名’
参数依次是:find命令,这里的./指的是当前路径,-type是选择文件类型,文件类型可以是 f 、d、 l,f是文件类型,d是目录类型,l是链接类型等。-name 按照名称查找,文件名称要加引号。
-type #按照类型查找
find ./ -type f # 查找当前目录 并且显示隐藏文件 默认显示目录及目录以下所有符合的文件
-name #按照名称查找
find ./ -type f -name "1.txt" # 按照名称查找
find ./ -type f -name "*.txt" # 匹配以.txt结尾的文件
find ./ -type f -name "1.t?t" # 通配符匹配 ?代表任意单个字符 大部分命令都支持
-size # 按照大小查找 k M G
find ./ -size +50M
find ./ -size +50M -size -100M # 并且关系 查找文件大于50 并且小于100
查找大于80并且小于90的文件
find ./ -type f -size +80M -size -90M
-maxdepth # 按照深度等级查找
find ./ -maxdepth 1 -size +50M # 查找1及目录大于50M的文件
find ./ -maxdepth 2 -size +50M # 查找2及目录大于50M的文件
2. whereis 命令
该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。
该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令。
whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]
whereis bash #使用指令"whereis"查看指令"bash"的位置
-b 只查找二进制文件。
-B<目录> 只在设置的目录下查找二进制文件。
-f 不显示文件名前的路径名称。
-m 只查找说明文件。
-M<目录> 只在设置的目录下查找说明文件。
-s 只查找原始代码文件。
-S<目录> 只在设置的目录下查找原始代码文件。
-u 查找不包含指定类型的文件。
3. locate命令
需要安装依赖,这里不做深入探讨可参考菜鸟教程:https://www.runoob.com/linux/linux-comm-locate.html
修改
具体操作参考: https://www.jianshu.com/p/9c13e1f33fc2
移动(修改文件名)
mv [options] 源文件或目录 目标文件或目录
-b:若需覆盖文件,则覆盖前先行备份。
-f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖。
-i :若目标文件(destination) 已经存在时,就会询问是否覆盖!
-u:若目标文件(destination) 已经存在,且 源文件source 比较新,才会更新(update)。
-t :即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。
mv test.log test1.txt # 将文件test.log重命名为test1.txt
mv test1.txt test3 # 将test1.txt文件移到目录test3中
mv log1.txt log2.txt log3.txt test3 # 将文件log1.txt,log2.txt,log3.txt移动到目录test3中
mv -t /opt/soft/test/test4/ log1.txt log2.txt log3.txt # 命令将log1.txt ,log2.txt, log3.txt 三个文件移到 test4目录中去
# (-t :即指定mv的目标目录,该选项适用于移动多个源文件到一个目录的情况,此时目标目录在前,源文件在后。)
mv -i log1.txt log2.txt # 将文件log1.txt改名为log2.txt,如果log2.txt已经存在,则询问是否覆盖
mv -f log3.txt log2.txt # 将文件log3.txt改名为log2.txt,即使log2.txt已经存在,也是直接覆盖掉
mv dir1 dir2 # 如果目录dir2不存在,将目录dir1改名为dir2; 如果目录dir2存在,则将目录dir1移动到目录dir2中。
mv * ../ # 移动当前文件夹下的所有文件到上一级目录
mv test3/*.txt test5 # 把当前目录的一个子目录里的文件移动到另一个子目录里
mv log1.txt -b log2.txt # 文件被覆盖前做简单备份,前面加参数-b
复制
cp [options….] source(s) destination
cp -v /home/aaronkilik/bin/sys_info.sh /home/aaronkilik/test
网友评论