CentOS 7 常用命令

基于CentOS 7最小化安装,环境为Win10 VirtualBox
文中大部分内容参考自TLCL


文件相关操作

熟记通配符和字符类,灵活处理文件操作

通配符 含义
* 匹配任意多个字符(包括零个或一个)
? 匹配任意一个字符(不包括零个)
[characters] 匹配任意一个属于字符集中的字符
[!characters] 匹配任意一个不属于字符集中的字符
[[:class:]] 匹配任意一个属于指定字符类中的字符
字符类 含义
[:alnum:] 匹配任意一个字母或数字
[:alpha:] 匹配任意一个字母
[:digit:] 匹配任意一个数字
[:lower:] 匹配任意一个小写字母
[:upper:] 匹配任意一个大写字母

pwd 打印当前工作目录

cd 更改当前工作目录

  • 使用相对路径 . 表示当前目录 .. 表示上级目录,通常情况下. 都可以省略
  • 使用绝对路径,例如/usr/bin

ls 列出目录内容

  • ls -a / 列出根目录内容,包括圆点开头的隐藏文件
  • ls / /boot同时列出根目录内容和/boot目录内容
  • ls -l 以长格式列出当前工作目录内容

下面是ls -l /root 输出内容

各字段意思

字段值 含义
-rw——- 对于文件的访问权限。第一个字符指明文件类型。在不同类型之间,开头的“-”说明是一个普通文件,“d”表明是一个目录。其后三个字符是文件所有者的访问权限,再其后的三个字符是文件所属组中成员的访问权限,最后三个字符是其他所有人的访问权限。
1 文件的硬链接数目。
root 文件所有者的用户名。
root 文件所属用户组的名字。
1406 以字节数表示的文件大小。
May 24 12:38 上次修改文件的时间和日期。
anaconda-ls.cfg 文件名。

file 确定文件类型

less 浏览文件,支持翻页

cp 复制文件和目录

  • cp aa.cfg bb 复制文件aa.cfg到bb目录下
  • cp aa.cfg bb.cfg 复制文件aa.cfg到当前目录下,并重命名为bb.cfg
  • cp -r cc bb 递归地复制cc目录及目录中的内容到bb目录
  • cp -r -u ee bb 仅从ee目录下复制 bb目录中不存在的文件,或者是ee目录下文件内容新于bb目录中已经存在的文件

mv 移动/重命名文件和目录,可使用与cp 类似的-u选项

  • mv aa bb 如果bb目录存在,则意为将aa目录移到bb目录;如果不存在bb目录,则意为将aa目录更名为bb

mkdir 创建一个新目录

  • mkdir dir1 在当前目录下创建dir1目录
  • mkdir /root/aa bb cc 在/root目录下创建aa bb cc 三个目录

rm 删除文件和目录,默认会提示是否确定删除, 可使用-f不提示直接删除,-r递归删除目录

ln 创建硬链接/软连接。硬链接只能指向同一个文件系统下的文件;

  • ln aa.cfg aa-hard 创建aa.cfg文件的一个硬链接aa-hard到当前目录下
  • ln -s aa.cfg aa-sym 创建aa.cfg文件的一个符号链接aa-sym到当前目录下
  • ln -s ../aa bb/aa-sym 假设上级目录的目录内容包含aa目录和bb目录,现在想创建aa目录的符号链接aa-sym到bb目录下,那么aa目录相对于aa-sym来说是处于上级目录下,所以这里是../aa

命令解释相关

type 显示命令的类型

  • type type 显示type is a shell builtins(type是shell内部命令)
  • type ls 显示ls is aliased to ‘ls –color=tty’(ls别名为‘ls –color=tty’,所以显示有颜色)
  • type cd 显示cp is /bin/cp(cp为/bin/cp可执行程序)

which 显示一个可执行程序的位置
help 得到 shell 内建命令的帮助文档
man 显示程序手册页,包含一个标题、命令语法的纲要、命令用途的说明、 以及每个命令选项的列表和说明。例如man ls
alias 创建自己的命令。组合多个命令并起一个别名,例如alias foo='cd /usr; ls; cd -'键入foo命令,依次执行cd /usr、ls、cd -,使用unalias删除别名。

I/O重定向

cat 读取一个或多个文件,然后复制它们到标准输出流。
sort 排序过滤器
uniq 报道或忽略重复行
wc 打印文件中换行符,字,和字节个数
grep 打印匹配行,配合正则表达式实现强大搜索功能
head/tail 打印文件开头部分/ 结尾部分
tee 从Stdin读取数据,并输出到Stdout和文件

权限

属性 文件 目录
r 允许打开并读取文件内容。 允许列出目录中的内容,前提是目录必须设置了可执行属性(x)。
w 允许写入文件内容或截断文件。但是不允许对文件进行重命名或删除,重命名或删除是由目录的属性决定的。 允许在目录下新建、删除或重命名文件,前提是目录必须设置了可执行属性(x)。
x 允许将文件作为程序来执行,使用脚本语言编写的程序必须设置为可读才能被执行。 允许进入目录,例如:cd directory 。

id 查看用户ID
passwd 更改用户密码(超级管理员可以更改其他用户密码)
chmod 更改文件模式(权限)。注意只有文件的所有者或者超级用户才 能更改文件或目录的模式。可以使用八进制表示法或者符号表示法。例:

  • chmod 600 foo.txt 将foo.txt文件权限改为600,即110-000-000,对应r w - - - - - - -。
  • chmod u+x,go=rw foo.txt给文件拥有者添加执行权限,并将组和其他人权限设置为读和执行。使用 + - = 来执行添加、删除、设定权限。

umask 设置默认权限
su 以其它用户身份和组ID运行一个shell
sudo 以另一个用户身份执行命令
chown 更改文件所有者和用户组

进程

ps 打印当前线程快照
top 显示任务(windows下的任务管理器)
jobs 列出活跃进程
bg 把一个任务放到后台执行
fg 把一个任务放到前台运行,可以使用Ctrl-Z暂停当前前台运行的任务
kill给一个进程发送信号,列出常用信号(数字为信号编号)例子:kill -1 %1或者kill -SIGHUP 1234命令都是挂起一个进程,其中进程的PID为1234,jobspec为%1

  • 1 HUP 挂起
  • 2 INT 中断
  • 9 KILL 杀死,立即执行,进程无法执行“清理工作”或者“保存工作”
  • 15 TERM 终止,kill默认执行信号。
  • 18 CONT 继续
  • 19 STOP 停止

killall杀死指定名字的进程
shutdown关机或者重启系统,shundown -h now立即关机 shutdown -r now 重启

归档与备份

gzip压缩文件
gunzip展开文件,若存在同名文件,将会覆盖
tar创建归档文件

  • tar cf foo.tar foofoo目录归档为foo.tar文件,其中c模式表示为文件或者目录创建归档文件,f表示指定归档文件名
  • tar xf ../foo.tar 抽取父目录的foo.tar归档文件内容至当前目录,值得注意的是,若所抽取的归档文件中包含多级目录,收取后将会在当前目录创建相同的目录

rsync与远端网络服务器中的文件备份保持同步

查看网络接口卡信息:

ifconfig

ip addrip link
可能会出现 ifconfig command not found,因为该命令已经过时,默认情况下CentOS 7不存在包含该命令的包。解决:
查找哪个包包含该命令:yum provides ifconfig
安装net-tools包:yum install net-tools

防火墙

查看防火墙状态:firewall-cmd --state
开启防火墙:systemctl start firewalld.service
关闭防火墙:systemctl stop firewalld.service
禁止开机启动:systemctl disable firewalld.service

更改分辨率

打开文件夹:cd /boot/grub2/
修改grub.cfg文件:vi grub.cfg
CentOS 7 常用命令_第1张图片
找到该片段的上下文处,在最后一行加上vga=ask,保存退出文件,重启reboot,每次启动都会列出分辨率表,有每个分辨率对应的代码,输入即启动。如果不想每次启动都输入,可以改为vga=0x343,”0x”16进制,”343”是800*600 32位色分辨率的代码,自行选择。

开启ssh服务

虚拟机下CentOS7开启SSH连接

你可能感兴趣的:(Linux)