文件管理命令:
cp命令:copy 源文件;目标文件;
单源复制:cp [OPTION]… [-T] SOURCE DEST
多源复制:cp [OPTION]… SOURCE… DIRECTORY
cp [OPTION]… -t DIRECTORY SOURCE…
单源复制:cp [OPTION]… [-T] SOURCE DEST
如果DEST不存在:则事先创建此文件,并复制源文件的数据流至DEST中;
如果DEST存在:
如果DEST是非目录文件:则覆盖目标文件;
如果DEST是目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流;
多源复制:cp [OPTION]… SOURCE… DIRECTORY
cp [OPTION]… -t DIRECTORY SOURCE…
如果DEST不存在:错误;
如果DEST存在:
如果DEST是非目录文件:错误;
如果DEST是目录文件:分别复制每个文件至目标目录中,并保持原名;
常用选项:
-i:交互式复制,即覆盖之前提醒用户确认;
-f:强制覆盖目标文件;
-r, -R:递归复制目录;
-d:复制符号链接文件本身,而非其指向的源文件;
-a:-dR –preserve=all, archive,用于实现归档;
–preserv=
mode:权限
ownership:属主和属组
timestamps: 时间戳
context:安全标签
xattr:扩展属性
links:符号链接
all:上述所有属性
mv命令:move
mv [OPTION]… [-T] SOURCE DEST
mv [OPTION]… SOURCE… DIRECTORY
mv [OPTION]… -t DIRECTORY SOURCE..
常用选项:
-i:交互式;
-f:force
rm命令:remove
rm [OPTION]… FILE…
常用选项:
-i:interactive
-f:force
-r: recursive
删除目录:rm -rf /PATH/TO/DIR
危险操作:rm -rf /*
bash通过状态返回值来输出此结果:
成功:0
失败:1-255
命令执行完成之后,其状态返回值保存于bash的特殊变量$?中
命令行展开
~:自动展开为用户的家目录,或指定的用户的家目录
{}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径
*:任意字符任意长度
.:代表目录时,表示当前的工作目录
创建/tmp目录下的: a_c, a_d, b_c, b_d
mkdir /tmp/{a,b}_{c,d}
在/tmp/mylinux目录下创建一系列的目录
mkdir mylinux/{b{in,oot/grub},dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib{/modules,64},proc,s{bin,ys},tmp,usr/local/{bin,sbin},var/{lock,log,run}} -pv
4 stat:
File: 文件名
Size: 大小 Blocks: 占用块数 IO Block: 块大小 文件类型
Device:文件所在的设备 Inode:文件系统索引号 Links:文件被硬链接的次数
Access:(权限) Uid:属主Uid / 属主名称 Gid:属组/属组名称
Access: 访问时间
Modify: 修改时间
Change: 元数据修改时间
Birth: –
修改文件的时间戳可以使用touch 命令
Touch:
-a change 只修改访问时间
-m change 只修改修改时间
-n –no-create 不创建任何文件
-d STRING 分析字符串用字符串代表的时间设置而不是当前时间
-t STAMP 使用[[CC]YY]MMDDhhmm[.ss]而不是当前时间
创建别名 alias NAME=COMMAND 取消别名 unalias NAME
命令替换 $() or “
查找/var目录下所有以l开头, 以一个小写字母结尾,且中间至少出现一位数字的文件或目录
find /var -name “l*[[:digit:]]*[[:lower:]]” \( -type f -o -type d \)
查找/etc目录下,以任意一个数字揩油,且非数字结尾的文件或目录
find /etc -name “[[:digit:]]*[^[:digit:]]” \( -type f -o -type d \)
查找/etc目录下,以非字母开头,后面给了一个字母以及其他任意长度任意字符的文件或目录
find /e tc -name “[^[:alpha:]][[:alpha:]]*” \( -type f -o -type d \)
创建一个tfile开头,后跟当前日期和时间的文件
touch tfile-`date “+%Y-%m-%d-%H-%M-%S”`
touch tfile-$(date “+%Y-%m-%d-%H-%M-%S)
复制/etc目录下所有以p开头,以非数字结尾的文件或目录到mytest1目录中
find /etc -name “p*[^[:digit:]]” \( -type f -o -type d \) -exec cp -r {} mytest1 \;
复制/etc目录下所有以,d结尾的文件或目录到mytest2目录中
find /etc -name “*.d” \( -type f -o -type d \) -exec cp -r {} mytest2 \;
复制/etc目录下所有以l或m或n开头,以.conf结尾的文件或目录到mytest3目录中
find /etc -name “[lmn]*.conf” -type f -exec cp {} mytest3 \;
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/90315