Linux常用命令

1. 时间date

  • 获取指定时间n天后时间
date -d "20180423 30 days " "+%Y%m%d"
  • 获取指定时间n天前时间
date -d "20180423 -30 days " "+%Y%m%d"

获取一个UUID:cat /proc/sys/kernel/random/uuid

  • tail +10 note从note文件第10行开始显示

touch可以修改指定文件的时间标签或者创建一个空文件

cat

命令 说明
cat -b note 从1开始对所有非空输出行编号
cat -n note 从1开始对所有行输出行编号
cat -s note 将多个相邻的空行合并成一个空行
cat file1 file2 > file3 将文件file1、file2合并之后放入file3中

grep

命令 说明
grep -E "[Mm]ain|[Pp]rint" note 查找包含main或者print的所有行,不管首字母大小写
grep -F nihao note 中包含“nihao”字符串的所有行
grep -c nihao note 包含“nihao”字符串的行的个数。
grep -i nihao note 查找包含‘nihao’的所有行,不区分字母大小写
grep -R nihao Pescod 在目录pescod下所有子目录中的文件中递归查找包含‘nihao’的行
grep -n nihao note 输出包含‘nihao’的所有行之前,输出行号
grep -v nihao note 只显示不包含匹配字符串的行

注意:如果在搜索模式的字符串中包含空格,需要使用单引号括起来。

diff

格式

diff [选项] file1 file2,逐行比较两个文件,列出不同之处,为了是两个文件一致,给出需要修改的行,输出格式如下:

格式 说明
n1 a n3 n4 把file1的n1行附加到file2的n3~n4行后,则二者相同
n1,n2 d n3 删除file1的n1~n2行即file2的n3行,则二者相同
n1,n2 c n3,n4 把file1的n1~n2行修改为file2的n3~n4,则二者相同

选项

选项 说明
-b 忽略空格造成的差别
-c 输出格式是带上下文的三行格式
-C n 输出格式是有上下文的n行格式
-i 忽略字母大小写的区别

cp

说明

如果源文件是普通文件,把它复制到指定的目标文件中;如果是目录,需要使用‘-r’选项,将整个目录下的所有文件盒子目录复制到目标位置。

选项

选项 说明
-a 递归的将目录下的所有文件及子目录都复制到目标目录中,并保留文件链接和文件属性不变
-r 递归复制目录
-i 在覆盖目标文件之前先给出提示,要求用户予以确认

示例

命令 说明
cp file1 /home/exam 将文件file1复制到/home/exam目录下
cp -r /home/exam /home/exam1 将/home/exam下所有文件复制到/home/exam1下面
cp -i /home/emam/m*.txt /home/exam1 交互式将/home/emam/下以m开头的所有txt文件复制到目录 /home/exam1下

rm

格式

rm [选项] 文件列表

选项

选项 说明
-f 忽略不存在的文件,不给出任何提示
-r 递归的删除指定目录及其下属的各级子目录和相应的文件
-i 交互式删除文件

mv

命令 说明
mv ex2 new1 将文件ex2改名为new1
mv /home/* . 将/home/中的所有文件移动到当前目录

wc

说明

统计指定文件的字节数、字数、行数

选项

选项 说明
-c 统计字节数
-l 统计行数
-w 统计字数

示例

命令 说明
wc -lcw file1 统计文件file1中的字节数、字数、行数
wc file1 统计文件file1中的字节数、字数、行数

mkdir

选项 说明
-m 将新建目录的存取权限设置为mode,存取权限用给定的八进制数字表示
-p 一次建立多个目录,如果新建目录所指定的路径中有些父目录不存在,则自动创建
示例 说明
mkdir --mode=700 /home/pescod/test 在目录/home/pescod/下建立test文件夹,并且只有文件主有读写和执行的权限,其他用户没有
mkdir -p -m 750 bin/so1 在当前目录下创建bin和在bin下创建so1文件夹,文件主可读写执行,同组用户可以读和执行,其他用户无权访问

发表评论

电子邮件地址不会被公开。 必填项已用*标注