前5章Linux命令总结

Linux命令

1.type :查看命令是内部命令还是外部命令 

eg: type cd    

eg:type ifconfig

2.tab键 :自动补齐

3.反斜杠“”: 强行换行

4.ctrl+U :快速删除光标之前的所有字符

5.ctrl+K :快速删除光标之后的所有字符

6.ctrl+Y :粘贴刚才删除的字符

7.ctrl+L :清屏

8.ctrl+C :结束当前命令

9.ctrl+D :退出用户

10.ctrl+A :把光标移到行首

11.ctrl+E :把光标移到行尾

12.ctrl+Z :转入后台运行

13.ctrl+R :查找历史命令

*在虚拟机中翻页 shift+PgUp/Dn

14.help内部命令帮助

eg: help cd      

eg:ls --help

15.man 提供在线帮助(百度更方便) 用q退出

16.ls :列表显示目录内的文件及目录,结合不同选项实现不同的作用(ls空 选项 空 目录或文件名)

-l :以长格式显示文件和目录列表

-a :显示所有子目录和文件信息

-A :同-a,隐藏目录“.和..”不显示

-d :显示目录属性,常与-l同时使用  ls -ld

-h :更人性化显示目录或文件大小,常与-l同时使用  ls -lh

-R :以递归方式显示目录及子目录中的所有内容

17.du :显示目录或文件所占磁盘空间大小(du空 选项 空目录或文件名)

-a :统计所有文件,不只是目录

-s :只统计总大小

h :显示大小

18.touch :创建文件 (touch 空 文件名)(创建多个文件touch空 文件名{1..100}.txt)

19.mkdir :创建目录 (mkdir 空 选项 空 目录位置及名称)

-p :一次性创建嵌套的多层目录

-v :显示详细

-m :设置umask值

20.cp :复制文件或目录  (cp空 选项 空 源文件或目录 目标文件或目录)

-f :覆盖同名文件或目录,强制复制

-i :提醒用户确认

-p :保持源文件权限、属性、属主及时间标记等不变

-r :递归复制

21.rm 删除目录或文件

-f :不提示,直接强制删除

-i :提示用户确认

-r :递归式删除整个目录数

22.mv 移动(mv 空 选项 空 源文件或目录 目标文件或目录)

23.which 查找linux命令程序所在位置 (which 空 命令/程序名)

24.find :精细查找文件或目录  (find查找范围 查找条件表达式)

-name 按名称查找 (find /etc -name"resol*conf")

-size 按大小查找 (find /etc -size +1M)

-user 按属性查找 (find /etc -user root)

-type 按类型查找 (find /boot -type d)  [d:目录;f:普通文件;b:块设备;c:字符设备文件]

逻辑运算符 -a 和 -o

find /boot -size +1M -a -name"vm*"

find /boot -size +1M -o -name"vm*"

/root 管理员的家目录

/home 普通用户的家目录

/boot 系统内核启动文件

/dev  Device,设备文件(黄色表示)

/etc 配置文件

/bin 命令存在的位置

/sbin  管理员可执行的命令(chmod修改文件权限)

/usr 应用程序  usr/local

/var 记录文件,记录系统使用状态(重要文件目录/var/log通过日志对服务进行挑错处理)

25.查看文件内容 cat,tac,nl,more,less,head,tail

cat 从上往下查看文件内容(cat 文件名 )

-n 显示内容同时显示行号 cat -n=nl

-A 显示所有字符

eg: cat -A /etc/yum.conf

tac 从下往上查看文件内容

eg: tac -nA /etc/yum.conf

nl  查看同时显示行数

eg: nl /etc/yum.conf

more 分屏显示文件内容

eg: more /etc/passwd

(enter向下滚动一行,空格 向下滚动一行 q 退出)

less 强大的分屏显示文件内容

(按PgUp,PgDn上下翻页)

head 查看文件前十行内容

eg: head -5 /etc/passwd

tail 查看文件后十行内容

eg: tail -5 /etc/passwd

26.wc 统计文件 (-l行数,-w单词个数,-c字节数)

eg: wc /etc/hosts

ls /etc/ | wc -l(查看一个目录下有多少文件)

27.grep,egrep 检索和过滤

grep: 在文件中查找并显示包含指定字符串的行(grep 查找条件 目标文件)

-i 查找时忽略大小写

-v 反转查找,输出与条件不相符的行

(“^...”表示以...开头  “...$”表示以...结尾  “^$”表示空行

eg:grep "ftp" /etc/passwd

eg:  grep -v "^#" /etc/yum.conf | grep -v "^$"

egrep: 增强型过滤  ( egrep "查找条件1,查找条件2,查找条件3..." 目标文件)

eg:egrep -v "^# | ^$" /etc/yum.conf

28.gzip,gunzip,bzip2,bunzip2 压缩和解压缩(只压缩单个文件)

(压缩选项为1-9的数字控制压缩级别,数字越大级别越高,压缩后 格式为.gz,.bz2)

eg:bzip2 test.txt      gunzip text.txt.gz

29.tar 归档命令(制作归档文件、释放归档文件) {tar -cf 归档文件名 源文件或目录} {tar -xf 归档文件名 -C 目标目录}

-c 创建.tar格式的压缩包

-x 解开.tar格式的压缩包

-v 输出详细信息

-f 解压到指定文件夹

-p 打包时保留原始文件及目录的权限

-t 列表查看包内的文件

-C 解包时指定释放的目标目录

-z 调用gzip程序进行压缩或解压

-j 调用bzip2程序进行压缩或解压

-P打包时保留文件及目录的绝对路径

(tar命令的选项前可以省略“-”,在解压时无需选择“-z”或“-j”命令可自行识别)

eg:mkdir -pv /aaa/bbb/ccc

    tar cjvf aaa.tar.bz2 /aaa/

eg:  tar xf aaa.tar.bz2 -C /root/

30. vi文本编辑器(创建或修改文本文件  维护Linux中的各种配置文件)

vim :vi编辑器的增强版,习惯上也称vi

a 在光标后插入内容

A 在光标所在行末尾插入内容

i 从当前光标前插入内容

l 在光标所在行行首插入内容

o 在当前光标下插入空行

O 在当前光标上插入空行

PgUp向上翻动一整页

PgDn向下翻动一整页

Home跳转至行首

End 跳转至行尾

1G或gg跳转到文件的行首

G跳转到问件的末尾行

#G跳转到文件的第#行

:set nu在编辑器中显示行号

:set nonu取消编辑器中的行号显示

dd删除当前光标所在行

#dd删除从光标所在行开始的#行内容

U取消对当前所做的所有编辑

ZZ保存当前的文件内容并退出vi编辑器

:w保存修改的内容

:w/root/newfile另存为其他文件

:q未修改退出

:q!放弃对文件内容的修改并退出vi

:wq保存并推出

wq!强制保存并退出

ctrl+r恢复撤销操作

:r/etc/filesystems在当前文件中读入其他文件内容

:s/old/new 将当前行中查找到的第一个字符“old ”替换成“new”

:s/old/new/g将当前行中查找到的所有字符串“old”替换成“new”

:#,# s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”

:% s/old/new/g在整个文件范围内替换所有字符串“old”为“new”

:s /old/new/c在替换命令末尾加入c命令,将对每一个替换动作提示用户进行确认

补充

:x 保存退出,但如果未修改,时间戳不变

:w file 将当前文件另存为file(vim)

:X 加密(vim)

:7 跳转到第七行

:1,$ co $ 从第一行到最后一行复制,到最后一行后

J 合并当前行和下一行

ctrl+r 对使用u命令撤销操作进行恢复

31.rpm包安装,软件安装包的格式

rpm -q 子选项 软件名

-qa 查看已安装的所有RPM软件包表

-qi 查看指定软件的详细信息

-ql 查询软件包安装的目录,文件列表

-qf 查询文件或目录属于哪个RPM软件

-qp 查询未安装的RPM包文件

-qpi:查看该软件的详细信息

-qpl:查看包内所含的目录,文件列表

eg: rpm -q bash

eg: rpm -qa | grep bash(查询是否已安装有bash软件包)

eg: rpm -ql postfix (查询postfix软件包安装的文件列表)

eg: rpm -qf /usr/bin/vim (查询vim是由哪个软件包安装的)

eg: rpm -qpi ethtool-3.5-1.el6.x86_64.rpm

eg: rpm -qpl ethtool-3.5-1.el6.x86_64.rpm

安装升级RPM软件   (rpm RPM包文件)

-i 安装一个新的软件包

-U 升级,若未安装,则进行安装

-h 以“#”号显示安装进度

-v 显示安装过程中的详细信息

-F 更新某个rpm软件,若未安装,则放弃安装

--force强制安装所指定的rpm软件包(一般不用)

卸载RPM软件  (rpm -e 软件名)

--nodeps 安装、升级或卸载软件时,忽略依赖关系(一般不用)

eg:rpm -e lynx (卸载Lynx)

    rpm -q lynx(查看)

重建RPM数据库

rpm --rebuilddb

rpm --initdb

32.构建本地yum仓库

umount /dev/sr0                卸载光盘

mkdir /media/cdrom             建立光驱被挂载的目录

mount /dev/sr0 /media/cdrom     挂载光驱到/media/cdrom

cd /etc/yum.repos.d/             移动到yum源配置文件的所在目录

mkdir bak                      建立多余源文件的备份目录

mv C* bak                     将C开头的文件移动到备份目录中

vi local.repo                    手动建立yum源配置文件,文件内容如下

yum源配置文件:

[cdrom]

name=cdrom

baseurl=file:///media/cdrom

enabled=1

gpgcheck=0

保存退出

yum -y clean all                                       清除yum缓存

yum makecache                                     重建yum缓存

安装:yum -y install

删除:yum -y remove

升级:yum -y update                           -y:不交互

33.源代码编译安装

安装gcc  gcc-c++

make install gcc gcc-c++

解压缩

tar xf httpd-2.2.17.tar.gz -C /usr/src

预配置

cd /usr/src/httpd-2.2.17/

./configure --prefix=/usr/local/apache

编译

make

安装

make install

编译安装步骤

备份后,修改配置文件(97行#号去掉)

cd /usr/local/apache/conf/

cp httpd.conf httpd.conf.bak

vi /usr/local/apache/conf/httpd.conf

启动Apache

/usr/local/apache/bin/apachectl start

yum -y lynx(文本浏览器)

lynx 127.0.0.1

34.用户账号文件/etc/passwd(保存用户名称,宿主目录,登陆shell等基本信息,每一行对应一个用户的账号记录

tail -1 /etc/passwd

第一字段:用户账号名

第二字段:x密码占位符

第三字段:uid(用户编号)

第四字段:gid(组编号)

第五字段:用户备注

第六字段:用户宿主目录

第七字段:登陆的shell(若为/sbin/nologin则不能登陆)

35./etc/shadow 保存用户的密码、账号有效期等信息,每一行对应一个用户的密码记录

tail -1 /etc/shadow

第一字段:用户账号名

第二字段:密文(密码)

第三字段:账号上次修改时间距离1970.01.01过去多少天

第四字段:距上次密码修改起多少天内不能再次修改密码,0天表示可以随意修改

第五字段:密码过期天数(在修改密码后多少天必须重新修改,99999表示永久可以使用)

第六字段:强制密码修改提醒时间(7表示在密码过期前7天开始警告)

第七字段:当密码过期后经过多少天该账号会被禁用

第八字段:账户过期日期,若设置则显示为过期日期距离1970.01.01多少天

36.添加用户账号useradd 用户名

-u 指定uid标记号

-d 指定宿主目录,缺省默认为/home/用户

-e 指定账号失效时间

-M 不为用户建立初始化宿主目录

-s 指定用户的登陆shell

-g 指定用户的基本组名或gid号

-G 指定用户的附加组名或gid号

-c 添加备注,显示在/etc/passwd第五字段

37.用户账号的初始配置文件

~/.bash_profile 每次登陆时执行

~/.bashrc 开始新shell时执行

~/.bash_logout 每次退出登陆时执行

具体步骤

创建用户useradd wjj

vi  ~wjj(用户名)/.bash_profile

(编辑器最后一行编写echo"welcome wjj!" ,保存并退出)

用su空-空wjj查看

vi  ~wjj/.basharc

(编辑器最后一行编写echo"hi! this is a new bash!"保存并退出)

用su空-空 wjj查看(在用户中,退出用户在进入就可以看到)

vi  ~wjj/.bash_logout

(在编辑器最后一行编写echo "bye bye wjj!")

38. passwd设置更改用户口令(passwd  用户名)

-d 清空用户密码

-l 锁定用户账号

-S 查看用户账号的状态(是否被锁定)

-u 解锁用户账号

-x 加数字,密码最长有效时限

-n加数字,密码最短有效时限

-w 加数字,在密码过期前多少天开始提醒用户

-i 加数字,当密码过期后经过多少天该账号会被禁用

39. usermod 修改用户属性 (usermod 用户名)

-l :更改用户账号的名字  (usermod -l 新名字 旧名字)

-c :修改用户备注

-L :锁定用户账号

-U :解锁用户账户

40. userdel 删除用户

-r 删除用户同时删除用户的宿主目录

41. groupadd 添加组账号管理  groupadd 账号名

groupadd -g 888数字 账号名

42.gpasswd设置组账号密码,添加、删除组成员

-a 向组内添加一个用户

-d 从组内删除一个用户

-M 定义组成员列表、用逗号分隔

43. groupdel 删除组账号  groupdel 组账号名

44. id,groups,finger,w,whoami,who 查询命令

Id 用户名 (查询用户表示)

groups 用户名  (查询客户所属的主)

finger 用户名   (查询账号的详细信息)需安装建yum仓库装

w 查询已登录到主机的用户信息

whoami 查询当前登陆的账号名

who (与w命令类似,查询已登陆到主机的用户)

- :表示一般文件

d :表示目录

l :表示软连接

p :表示PIPE管道文件

s :表示socket通信套接字文件

c :表示字符设备文件

b :表示块设备文件

各权限的字母及8进制表示

读权限  r   4

写权限  w  2

可执行  x  1

无权限  -  0

45. chmod 设置文件目录或权限

-R 表示以递归的方式设置目录及目录下的所有子目录及文件的权限

u 属主

g 属组

o 其他人

a 所有人

+ 添加

- 删除

= 重置

46. 在建立目录时用-m选项可以直接设置新建目录的权限

chown 设置文件的归属

chown 属主 文件

chown :属组 文件

chown 属主:属组 文件

47. umask 权限掩码

设置umask值 (umask 020)

原文地址:https://www.cnblogs.com/zhiyuan-yu/p/11266433.html