Linux 常用命令总结

  • A+
所属分类:linux技术
摘要

Linux常用命令总结  1.关机 (系统的关机、重启以及登出 )   shutdown -h now 关闭系统

Linux常用命令总结

 

1.关机 (系统的关机、重启以及登出 ) 

shutdown -h now 关闭系统

shutdown -r now 重启

reboot 重启

logout 注销

 

2.文件和目录 

(1)cd /home 进入 '/ home' 目录' 

cd .. 返回上一级目录 

cd ../.. 返回上两级目录 

cd 进入个人的主目录 

cd - 返回上次所在的目录 

(2)pwd 显示工作路径

 

实例:

查看软链接的实际路径

pwd -P


(3)ls 查看目录中的文件

常用参数搭配:

ls -a 列出目录所有文件,包含以.开始的隐藏文件

ls -A 列出除.及..的其它文件 ls -r 反序排列

ls -t 以文件修改时间排序

ls -S 以文件大小排序

ls -h 以易读大小显示

ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来 

 

(4)tree 显示文件和目录由根目录开始的树形结构

(5)mkdir dir1 创建一个叫做 'dir1' 的目录' 

mkdir dir1 dir2 同时创建两个目录 

mkdir -p /tmp/dir1/dir2 创建一个目录树 

(6)rm -f file1 删除一个叫做 'file1' 的文件' 

rmdir dir1 删除一个叫做 'dir1' 的目录' 

rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容 

rm -rf dir1 dir2 同时删除两个目录及它们的内容 

 

(7)mv 命令

移动文件或修改文件名,根据第二参数类型(如目录,则移动文件;如为文件则重命令该文件)。

 

当第二个参数为目录时,第一个参数可以是多个以空格分隔的文件或目录,然后移动第一个参数指定的多个文件到第二个参数指定的目录中。

 

实例:

mv dir1 new_dir 重命名/移动 一个目录 

(8)cp 将源文件复制至目标文件,或将多个源文件复制至目标目录

常用搭配:

-i 提示

-r 复制目录及目录内所有项目

-a 复制的文件与原文件时间一样

实例:

cp file1 file2 复制一个文件 

cp -a /tmp/dir1 . 复制一个目录到当前工作目录

 

(9)ln -s file1 lnk1 创建一个指向文件或目录的软链接 

ln file1 lnk1 创建一个指向文件或目录的物理链接 

 

3.文件搜索 

 

(1)find  用于在文件树中查找文件,并作出相应的处理

 

命令格式:

find pathname -options [-print -exec -ok ...]

命令参数:

pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。

-print find命令将匹配的文件输出到标准输出。

-exec find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } ;,注意{ }和之间的空格。

-ok 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

 

 

命令选项:

-name 按照文件名查找文件

-perm 按文件权限查找文件

-user 按文件属主查找文件

-group 按照文件所属的组来查找文件。

-type 查找某一类型的文件,诸如:

      b - 块设备文件

   d - 目录

   c - 字符设备文件

   l - 符号链接文件

 

实例:

find / -name file1 从 '/' 开始进入根文件系统搜索文件和目录

find / -user user1 搜索属于用户 'user1' 的文件和目录

find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件

find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件 

 

(2)whereis halt 显示一个二进制文件、源码或man的位置 

 

(3)which  在 linux 要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:

which 查看可执行文件的位置

whereis 查看文件的位置

locate 配合数据库查看文件位置

find 实际搜寻硬盘查询文件名称

 

常用参数:

-n  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。

 

 

which halt 显示一个二进制文件或可执行文件的完整路径

 

4.用户和群组 

groupadd group_name 创建一个新用户组

groupdel group_name 删除一个用户组

groupmod -n new_group_name old_group_name 重命名一个用户组 

useradd user1 创建一个新用户

userdel -r user1 删除一个用户 ( '-r' 排除主目录)

passwd 修改口令

passwd user1 修改一个用户的口令 (只允许root执行

 

5.查看文件内容 

(1)cat 主要有三大功能:

 

1.一次显示整个文件:

cat filename

2.从键盘创建一个文件:

cat > filename

3.将几个文件合并为一个文件:

cat file1 file2 > file

-b 对非空输出行号

-n 输出所有行号

 

cat file1 从第一个字节开始正向查看文件的内容

tac file1 从最后一行开始反向查看一个文件的内容

(2)more  功能类似于 cat, more 会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示

more常用搭配:

+n 从笫 n 行开始显示

-n 定义屏幕大小为n

+/pattern 在每个档案显示前搜寻该字串(pattern),然后从该字串前两行之后开始显示

-c 从顶部清屏,然后显示

-d 提示“Press space to continue,’q to quit(按空格键继续,按q键退出)”,禁用响铃功能

-l 忽略Ctrl+l(换页)字符

-p 通过清除窗口而不是滚屏来对文件进行换页,与-c选项相似

-s 把连续的多个空行显示为一行

-u 把文件内容中的下画线去掉 

实例:

more file1 查看一个长文件的内容

(3)less  与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件

less常用搭配:

-i 忽略搜索时的大小写

-N 显示每行的行号

-o <文件名> less 输出的内容在指定文件中保存起来

-s 显示连续空行为一行

/字符串:向下搜索“字符串”的功能

?字符串:向上搜索“字符串”的功能

n:重复前一个搜索(与 / ? 有关)

N:反向重复前一个搜索(与 / ? 有关)

-x <数字> 将“tab”键显示为规定的数字空格

b 向后翻一页

d 向后翻半页

h 显示帮助界面

Q 退出less 命令

u 向前滚动半页

y 向前滚动一行

空格键 滚动一行

回车键 滚动一页

[pagedown]: 向下翻动一页

[pageup]: 向上翻动一页

 

(4)head  用来显示档案的开头至标准输出中,默认 head 命令打印其相应文件的开头 10 行

常用参数:

-n<行数> 显示的行数(行数为复数表示从最后向前数)

head -2 file1 查看一个文件的前两行

 

(5)tail  用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件

 

常用参数:

-f 循环读取(常用于查看递增的日志文件)

-n<行数> 显示行数(从后向前)

 

tail -2 file1 查看一个文件的最后两行

tail -f /var/log/messages 实时查看被添加到一个文件中的内容 

 

6.文本处理  

 

(1)grep命令:

grep 强大的文本搜索命令,grep(Global Regular Expression Print) 全局正则表达式搜索。

 

grep 的工作方式是这样的,它在一个或多个文件中搜索字符串模板。如果模板包括空格,则必须被引用,模板后的所有字符串被看作文件名。搜索的结果被送到标准输出,不影响原文件内容。

命令格式:

grep [option] pattern file|dir

常用参数:-A n --after-context显示匹配字符后n

-B n --before-context显示匹配字符前n -C n --context 显示匹配字符前后n -c --count 计算符合样式的列数 -i 忽略大小写 -l 只列出文件内容符合指定的样式的文件名称 -f 从文件中读取关键词 -n 显示匹配内容的所在文件中行数 -R 递归查找文件夹

实例:

grep Aug /var/log/messages 在文件 '/var/log/messages'中查找关键词"Aug" 

grep ^Aug /var/log/messages 在文件 '/var/log/messages'中查找以"Aug"开始的词汇

grep Aug -R /var/log/* 在目录 '/var/log' 及随后的目录中搜索字符串"Aug" 

grep [0-9] /var/log/messages 选择 '/var/log/messages' 文件中所有包含数字的行

 

(2)sed 's/stringa1/stringa2/g' example.txt 将example.txt文件中的 "string1" 替换成 "string2"

sed '/^$/d' example.txt 从example.txt文件中删除所有空白行 

sed '/ *#/d; /^$/d' example.txt 从example.txt文件中删除所有注释和空白行 

sed -n '/stringa1/p' 查看只包含词汇 "string1"的行 

sed -e 's/ *$//' example.txt 删除每一行最后的空白字符  

(3)cat -n file1 标示文件的行数 

cat example.txt | awk 'NR%2==1' 删除example.txt文件中的所有偶数行 

(4)comm -1 file1 file2 比较两个文件的内容只删除 'file1' 所包含的内容 

comm -2 file1 file2 比较两个文件的内容只删除 'file2' 所包含的内容 

comm -3 file1 file2 比较两个文件的内容只删除两个文件共有的部分 

 

 

(5)wc 命令

 

wc(word count)功能为统计指定的文件中字节数、字数、行数,并将统计结果输出

 

命令格式:

wc [option] file..

 

命令参数:

 

-c 统计字节数 -l 统计行数 -m 统计字符数 -w 统计词数,一个字被定义为由空白、跳格或换行字符分隔的字符串

实例:

查找文件的 行数 单词数 字节数 文件名

wc text.txt

结果:

7     8     70     test.txt

统计输出结果的行数

cat test.txt | wc -l
 

 


 

 

7.备份

dump -0aj -f /tmp/home0.bak /home 制作一个 '/home' 目录的完整备份 

dump -1aj -f /tmp/home0.bak /home 制作一个 '/home' 目录的交互式备份 

restore -if /tmp/home0.bak 还原一个交互式备份 

rsync -rogpav --delete /home /tmp 同步两边的目录

 

................