1. 安装程序
1.常用命令
- yum install yum-fastestmirror (自动搜索最快镜像插件)
- yum install yumex (安装yum图形窗口插件)
- yum grouplist (查看可能批量安装的列表)
2.安装
- yum install (全部安装)
- yum install xxx (安装指定xxx)(它安装单个软件,以及这个软件的依赖关系)
- yum groupinstall xxx (安装指定程序xxx)(它安装一个安装包,这个安装包包涵了很多单个软件,以及单个软件的依赖关系。)
3.更新和升级
- yum update (全部更新)
- yum update package1 (更新指定程序包package1)
- yum check-update (检查可更新的程序)
- yum upgrade package1 (升级指定程序包package1)
- yum groupupdate group1 (升级程序组group1)
4.查找和显示
- yum info package1 (显示安装包信息package1)
- yum list (显示所有已经安装和可以安装的程序包)
- yum list package1 (显示指定程序包安装情况package1)
- yum groupinfo group1 (显示程序组group1信息yum search string 根据关键字string查找安装包)
5.删除程序
- yum remove | erase package1 (删除程序包package1)
- yum groupremove group1 (删除程序组group1)
- yum deplist package1 (查看程序package1依赖情况)
6.清除缓存
- yum clean packages (清除缓存目录下的软件包)
- yum clean headers (清除缓存目录下的 headers)
- yum clean oldheaders (清除缓存目录下旧的 headers)
- yum clean, yum clean all (= yum clean packages; yum clean oldheaders) (清除缓存目录下的软件包及旧的headers)
7.命令格式
- yum -y install 包名(支持*) :自动选择y,全自动
- yum install 包名(支持*) :手动选择y or n
- yum remove 包名(不支持*)
- rpm -ivh 包名(支持*):安装rpm包
- rpm -e 包名(不支持*):卸载rpm包
2. 基本命令
1.关机
- shutdown -h now (立即关机)
- shutdown -h 5 (5分钟后关机)
- poweroff (立即关机)
2.重启
- shutdown -r now (立即重启)
- shutdown -r 5 (5分钟后重启)
- reboot (立即重启)
3. 帮助命令
1.help
- shutdown --help
- ifconfig --help````
2.man
- man shutdown (按q退出)
4. 目录操作命令
1. cd 切换目录
- cd / (切换到根目录)
- cd /xx (切换到根目录下的xx)
- cd ../ (切换到上机目录)
- cd ~ (切换到home目录)
- cd - (切换到上次浏览目录)
2. ls 查看目录
- ls (查看当前目录下的所有目录和文件)
- ls -a (查看当前目录下的所有目录和文件,包括隐藏文件)
- ls -l 或 -ll (列表查看当前目录下的所有目录和文件,列表查看,显示更多信息)
- ls /dir (查看指定目录下的所有文件)
3. 操作目录(增,删,改,查)
1. mkdir 创建目录
命令 : mkdir dir(目录)
- mkdir xx (在当前目录下创建一个名为xx的目录)
- mkdir /xx/xx (在指定目录下创建一个名为xx的目录)
2. rm 删除目录/文件
命令 : rm [-rf] 目录
删除目录 :
- rm -r xx (递归删除当前文件下的xx目录)
- rm -rf xxx (递归删除当前目录下的xx目录,不作询问)
删除文件 :
- rm 文件 (删除当前目录下的文件)
- rm -f 文件 (删除当前目录的文件,不作询问)
全部删除 :
- rm -rf * (删除当前目录下的所有的目录的文件,不作询问)
- rm -rf /xxx/* (删除指定目录下的所有的目录和文件,不作询问)
3. mv/cp 修改目录
重命名目录 命令:mv 当前目录 新目录
- mv xx yy (将目录xx修改为yy)
注:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行重命名的操作
剪切目录 命令:mv 目录名称 新位置
- mv /usr/tmp/xx /usr (将/usr/tmp目录下的xx目录剪切到/usr目录下面)
注:mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作
拷贝目录 命令:cp -r 目录名称 目标位置 -r (递归)
- cp /usr/tmp/xx /usr (将/usr/tmp目录下的xx目录复制到/usr目录下面)
注:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不用写-r递归
4. find 搜索目录
命令:find 目录 参数 文件名称
- find /usr/tmp -name 'x*' (查找/usr/tmp目录下所有一=以x开头的目录和文件)
5. 文件操作命令
1. 文件操作
1. touch 新建文件
命令: touch 文件名
- touch xx.txt (当前目录下创建一个xx.txt的文件)
2. rm 删除文件
命令: rm -rf 文件名
- rm -rf xx.txt (当前目录下删除一个xx.txt的文件)
3. vi/vim 修改文件
【vi编辑器的3种模式】命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode)
- 命令行模式command mode)
控制屏幕光标的移动,字符、字或行的删除,查找,移动复制某区段及进入Insert mode下,或者到 last line mode。
命令行模式下的常用命令:
1. 控制光标移动:↑,↓,j
2. 删除当前行:dd
3. 查找:/字符
4. 进入编辑模式:i o a
5. 进入底行模式:: - 编辑模式(Insert mode)
只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。
编辑模式下常用命令:
1. ESC 退出编辑模式到命令行模式; - 底行模式(last line mode)
将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。
底行模式下常用命令:
1. 退出编辑: :q
2. 强制退出: :q!
3. 保存并退出: :wq
1. 打开文件
命令:vi 文件名
- vi aa.txt 或者 vim aa.txt (打开当前目录下的aa.txt文件)
注:使用vi编辑器打开文件后,并不能编辑,因为此时处于命令模式,点击键盘i/a/o进入编辑模式。
2. 编辑文件
使用vi编辑器打开文件后点击按键:i ,a或者o即可进入编辑模式。
- i:在光标所在字符前开始插入
- a:在光标所在字符后开始插入
- o:在光标所在行的下面另起一新行插入
保存或者取消编辑
3. 保存/取消文件:
- ESC 进入命令行模式
- : 进入底行模式
- wq/q! 保存并退出编辑/撤销本次修改并退出编辑
4. cat/more/less/tail 查看文件
1. cat 看最后一屏
- cat t.txt (使用cat查看t.txt文件,只能显示最后一屏内容)
2. more 百分比显示
- more t.txt (使用more查看t.txt文件,可以显示百分比,回车可以向下一行,空格可以向下一页,q可以退出查看)
3. less 翻页查看
- less t.txt (使用less查看t.txt文件,可以使用键盘上的PgUp和PgDn向上 和向下翻页,q结束查看)
4. tail 指定行数或者动态查看
- tail -5 t.txt (使用tail -5 查看t.txt文件的后5行,Ctrl+C结束)
2. 修改权限
rwx:r代表可读,w代表可写,x代表该文件是一个可执行文件,如果rwx任意位置变为-则代表不可读或不可写或不可执行文件。
- r 读权限read 4
- w 写权限write 2
- x 操作权限execute 1
- 第一位:-就代表是文件,d代表是文件夹
- 第一段(3位):代表拥有者的权限
- 第二段(3位):代表拥有者所在的组,组员的权限
- 第三段(最后3位):代表的是其他用户的权限
示例:给t.txt文件权限改为可执行文件权限,t.txt文件的权限是 - rw- --- ---
6. 压缩文件操作
1. 打包/压缩
- Windows的压缩文件的扩展名 .zip/.rar
- linux中的打包文件:aa.tar
- linux中的压缩文件:bb.gz
- linux中打包并压缩的文件:.tar.gz
命令:tar -zcvf 打包压缩后的文件名 要打包的文件 z:调用gzip压缩命令进行压缩 c:打包文件 v:显示运行过程 f:指定文件名
- tar -zcvf xx.tar * (打包并压缩当前目录下的所有文件)
- tar -zcvf xx.tar aa.txt bb.txt (压缩当前目录下指定的aa.txt和bb.txt文件打包并压缩)
2. 解压
命令:tar [-zxvf] 压缩文件 其中:x 代表解压
- tar -xvf xx.tar -C /usr (将xx.tar解压到根目录下/usr中,C代表指定解压的位置)
7. 查找命令
1. grep
命令:grep [-abcEFGhHilLnqrsvVwxy][-A<显示行数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]
- 作用:查找文件里符合条件的字符串
- -a :将 binary 文件以 text 文件的方式搜寻数据
- -c :计算找到 '搜寻字符串' 的次数
- -i :忽略大小写的不同,所以大小写视为相同
- -n :顺便输出行号
- -v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行!
- --color=auto :可以将找到的关键词部分加上颜色的显示喔!
- 命令详情:grep
####### 实例
- grep -i hello *.txt (搜索当前目录下的文件内容包含hello不区分大小写,后缀txt的文件内容)
2. find
find path -option [-print] [-exec ok command] } ;
- 作用:在目录结构中搜索文件,并对搜索结果执行指定的操作 默认搜索当前目录和子目录
- . 表示当前目录以及子目录
- / 表示根目录
- -mount, -xdev : 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件
- -amin n : 在过去 n 分钟内被读取过
- -anewer file : 比文件 file 更晚被读取过的文件
- -atime n : 在过去n天内被读取过的文件
- -cmin n : 在过去 n 分钟内被修改过
- -cnewer file :比文件 file 更新的文件
- -ctime n : 在过去n天内被修改过的文件
- -empty : 空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name
- -ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写
- -name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写
- -size n : 文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。
- -type c : 文件类型是 c 的文件。
- d: 目录
- c: 字型装置文件
- b: 区块装置文件
- p: 具名贮列
- f: 一般文件
- l: 符号连结
- s: socket
- -pid n : process id 是 n 的文件
- 命令详情:find
实例
- find . -name "*.txt" (查找当前目录及子目录所有文件名后缀为.txt文件并列表出来)
- find -type f (查找当前目录及子目录所有一般文件并列表出来)
3. locate
locate [-d ][--help][--version][范本样式...]
- 作用:用于查找符合条件的文档,他会去保存文档和目录名称的数据库内,查找合乎范本样式条件的文档或目录
- -b, --basename -- 仅匹配路径名的基本名称
- -c, --count -- 只输出找到的数量
- -d, --database DBPATH -- 使用 DBPATH 指定的数据库,而不是默认数据库 /var/lib/mlocate/mlocate.db
- -e, --existing -- 仅打印当前现有文件的条目
- -1 -- 如果 是 1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到 的档案。这会始速度减慢,因为 locate 必须至实际的档案系统中取得档案的 权限资料。
- -0, --null -- 在输出上带有NUL的单独条目
- -S, --statistics -- 不搜索条目,打印有关每个数据库的统计信息
- -q -- 安静模式,不会显示任何错误讯息。
- -P, --nofollow, -H -- 检查文件存在时不要遵循尾随的符号链接
- -l, --limit, -n LIMIT -- 将输出(或计数)限制为LIMIT个条目
- -n -- 至多显示 n个输出。
- -m, --mmap -- 被忽略,为了向后兼容
- -r, --regexp REGEXP -- 使用基本正则表达式
- --regex -- 使用扩展正则表达式
- -q, --quiet -- 安静模式,不会显示任何错误讯息
- -s, --stdio -- 被忽略,为了向后兼容
- -o -- 指定资料库存的名称。
- -h, --help -- 显示帮助
- -i, --ignore-case -- 忽略大小写
- -V, --version -- 显示版本信息
- 命令详解:locate
实例
- locate passwd (查找passwd文件夹)
- locate /usr/a (查找usr目录下所有以开头的文件)
- locate -i ~/r (搜索当前用户下所有以r开头的问价)
4. whereis
whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]
- 作用:用于查找文件,在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件
- -b 只查找二进制文件。
- -B<目录> 只在设置的目录下查找二进制文件。
- -f 不显示文件名前的路径名称。
- -m 只查找说明文件。
- -M<目录> 只在设置的目录下查找说明文件。
- -s 只查找原始代码文件。
- -S<目录> 只在设置的目录下查找原始代码文件。
- -u 查找不包含指定类型的文件。
- 命令详解:whereis
实例
- whereis bash (使用指令"whereis"查看指令"bash"的位置)
- where -b bash (单独查询二进制文件或帮助文件)
5. which
which [文件...]
- 作用:命令用于查找文件,which指令会在环境变量$PATH设置的目录里查找符合条件的文件。
- -n<文件名长度> 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
- -p<文件名长度> 与-n参数相同,但此处的<文件名长度>包括了文件的路径。
- -w 指定输出时栏位的宽度。
- -V 显示版本信息。
- 命令详解:which
实例
- which bash (查看指令"bash"的绝对路径)
6. su
su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]
- 作用:用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码
- -f 或 --fast 不必读启动档(如 csh.cshrc 等),仅用于 csh 或 tcsh
- -m -p 或 --preserve-environment 执行 su 时不改变环境变数
- -c command 或 --command=command 变更为帐号为 USER 的使用者并执行指令(command)后再变回原来使用者
- -s shell 或 --shell=shell 指定要执行的 shell (bash csh tcsh 等),预设值为 /etc/passwd 内的该使用者(USER) shell
- --help 显示说明文件
- --version 显示版本资讯
-
- -l 或 --login 这个参数加了之后,就好像是重新 login 为该使用者一样,大部份环境变数(HOME SHELL USER等等)都是以该使用者(USER)为主,并且工作目录也会改变,如果没有指定 USER ,内定是 root
- USER 欲变更的使用者帐号
- ARG 传入新的 shell 参数
- 命令详解:su
实例
- su -c ls root (变更帐号为 root 并在执行 ls 指令后退出变回原使用者)
- su root -f (变更帐号为 root 并传入 -f 参数给新执行的 shell)
- su - clsung (变更帐号为 clsung 并改变工作目录至 clsung 的家目录(home dir))
7. sudo
sudo [ -b ] [ -p prompt ] [ -u username/#uid] -s
- 作用:以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行。
- -V 显示版本编号
- -h 会显示版本编号及指令的使用方式说明
- -l 显示出自己(执行 sudo 的使用者)的权限
- -v 因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会问密码,这个参数是重新做一次确认,如果超过 N 分钟,也会问密码
- -k 将会强迫使用者在下一次执行 sudo 时问密码(不论有没有超过 N 分钟)
- -b 将要执行的指令放在背景执行
- -p prompt 可以更改问密码的提示语,其中 %u 会代换为使用者的帐号名称, %h 会显示主机名称
- -u username/#uid 不加此参数,代表要以 root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令(#uid 为该 username 的使用者号码)
- -s 执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell
- -H 将环境变数中的 HOME (家目录)指定为要变更身份的使用者家目录(如不加 -u 参数就是系统管理者 root )
- 命令详解:sudo
8. 系统服务
- service iptables status (查看iptables服务的状态)
- service iptables start (开启iptables服务)
- service iptables stop (停止iptables服务)
- service iptables restart (重启iptables服务)
- chkconfig iptables off (关闭iptables服务的开机自启动)
- chkconfig iptables on (开启iptables服务的开机自启动)
9. 其他
- chkconfig iptables off (关闭防火墙)
- service network restart (重置网络)
- ps -ef (查看所有正在运行的进程)
10. 快捷键
1. 基本快捷
- Tab (只需要输入一个命令,文件名,目录名甚至是命令选项的开头,并敲击 tab 键。它将自动完成你输入的内容,或为你显示全部可能的结果)
- Ctrl + C (终端上中断命令或进程该按的键。它将立刻终止运行的程序)
- Ctrl + Z (将正在运行的程序送到后台。 通常,你可以在使用 & 选项运行程序前之完成该操作)
- Ctrl + D (将使你退出当前终端。如果你使用 SSH 连接,它将会关闭。 如果你直接使用一个终端,该应用将会立刻关闭)
- Ctrl + L (清空终端,代替输入 C-L-E-A-R。得心应手)
- Ctrl + A (将移动光标到所在行首)
- Ctrl + E (与 Ctrl+A 相反。 Ctrl+A 送光标到行首,反之 Ctrl+E 移动光标到行尾)
- Ctrl + U (擦除从当前光标位置到行首的全部内容)
- Ctrl + K (擦除的是从当前光标位置到行尾的全部内容)
- Ctrl + W (光标在一个单词本身上,它将擦除从光标位置到词首的全部字母。最好的方法是用它移动光标到要删除单词后的一个空格上)
- Ctrl + Y (将粘贴使用 Ctrl+W,Ctrl+U 和 Ctrl+K 快捷键擦除的文本。 如果你删除了错误的文本或需要在某处使用已擦除的文本,这将派上用场)
- Ctrl + P (查看上一个命令。 你可以反复按该键来返回到历史命令。 在很多终端里,使用 PgUp 键来实现相同的功能)
- Ctrl + N (Ctrl+N 显示下一个命令。 如果使用 Ctrl+P 查看上一条命令,你可以使用 Ctrl+N 来回导航。 许多终端都把此快捷键映射到 PgDn 键)
- Ctrl + R (使用该快捷键来搜索历史命令)
快捷讲明
- Ctrl – k (先按住 Ctrl 键,然后再按 k 键)
- Alt – k (先按住 Alt 键,然后再按 k 键)
- M – k (先单击 Esc 键,然后再按 k 键)
2. 移动光标快捷
- Ctrl – a (移到行首)
- Ctrl – e (移到行尾)
- Ctrl – b (往回(左)移动一个字符)
- Ctrl – f (往后(右)移动一个字符)
- Alt – b (往回(左)移动一个单词)
- Alt – f (往后(右)移动一个单词)
- Ctrl – xx (在命令行尾和光标之间移动)
- M-b (往回(左)移动一个单词)
- M-f (往后(右)移动一个单词)
3. 编辑快捷命令
- Ctrl – h (删除光标左方位置的字符)
- Ctrl – d (删除光标右方位置的字符(注意:当前命令行没有任何字符时,会销系统或结束终端))
- Ctrl – w (由光标位置开始,往左删除单词。往行首删)
- Alt – d (由光标位置开始,往右删除单词。往行尾删)
- M – d (由光标位置开始,删除单词,直到该单词结束)
- Ctrl – k (由光标所在位置开始,删除右方所有的字符,直到该行结束)
- Ctrl – u (由光标所在位置开始,删除左方所有的字符,直到该行开始)
- Ctrl – y (粘贴之前删除的内容到光标后)
- ctrl – t (交换光标处和之前两个字符的位置)
- Alt + . (使用上一条命令的最后一个参数)
- Ctrl – _ (回复之前的状态。撤销操作)
- Ctrl -a + Ctrl -k 或 Ctrl -e + Ctrl -u 或 Ctrl -k + Ctrl -u (组合可删除整行)
4. Bang(!)快捷命令
- !! (执行上一条命令)
- foobar (把上一条命令里的foo替换为bar,并执行)
- !wget (执行最近的以wget开头的命令)
- !wget:p (仅打印最近的以wget开头的命令,不执行)
- !$ (上一条命令的最后一个参数, 与 Alt - . 和 $_ 相同)
- !* (上一条命令的所有参数)
- !:p (打印上一条命令是所有参数,也即 !的内容)
- ^abc (删除上一条命令中的abc)
- foobar (将上一条命令中的 foo 替换为 bar)
- foobar^ (将上一条命令中的 foo 替换为 bar)
- !-n (执行前n条命令,执行上一条命令: !-1, 执行前5条命令的格式是: !-5)
5. 查找历史快捷命令
- Ctrl – p (显示当前命令的上一条历史命令)
- Ctrl – n (显示当前命令的下一条历史命令)
- Ctrl – r (搜索历史命令,随着输入会显示历史命令中的一条匹配命令,Enter键执行匹配命令;ESC键在命令行显示而不执行匹配命令)
- Ctrl – g (从历史搜索模式(Ctrl – r)退出)
6. 控制快捷命令
- Ctrl – l (清除屏幕,然后,在最上面重新显示目前光标所在的这一行的内容)
- Ctrl – o (执行当前命令,并选择上一条命令)
- Ctrl – s (阻止屏幕输出)
- Ctrl – q (允许屏幕输出)
- Ctrl – c (终止命令)
- Ctrl – z (挂起命令)