Linux常用命令整理
一、init命令
0:关闭机器
3:命令行模式
5:图形化界面
6:重启机器
centos6的启动模式配置文件是/etc/inittab,但centos7里这个文件已经没用
是所有进程的祖先,其进程号始终为1。init用于切换系统的运行级别,切换的工作是立即完成的。init 0命令用于立即将系统运行级别切换为0,即关机;init 6命令用于将系统运行级别切换为6,即重新启动
二、pwd命令
查看当前路径
三、ls 命令
ls 路径:查看目标目录下的文件,不加路径为当前目录(不包含隐藏文件)
ls -a:查看当前目录下的所有文件和子目录(包含隐藏文件)
ls -l:以长格式列出文件内容(属性,ll为其简写)
ls -la:列出当前目录下的所有文件和目录的详细信息(包含隐藏文,ll -a是其简写)
ll -t:按时间距离当前最近的顺序列出文件及其目录
ls -l -h:将文件的单位做一转换,默认为字节,ls -lh(简写)
ll(ls) -R:递归显示子目录
ll查询结果解释
第一个字母(文件类型,一共有几种)
- 普通文件
d 目录
l 软连接
s 套接字文件
p 管道文件
b 块式文件
c 字符设备文件
文件权限
. 与selinux相关(安全增强型 Linux(Security-Enhanced Linux)简称 SELinux,它是一个 Linux 内核模块,也是 Linux 的一个安全子系统。)
数字 硬链接数(一个子目录,硬链接数加1)
文件所属人 文件所属组
大小
文件最后一次的修改时间
文件名
四、reboot命令
重启
reboot的工作过程与halt类似,其作用是重新启动,而halt是关机。其参数也与halt类似。reboot命令重启动系统时是删除所有的进程,而不是平稳地终止它们。因此,使用reboot命令可以快速地关闭系统,但如果还有其它用户在该系统上工作时,就会引起数据的丢失。所以使用reboot命令的场合主要是在单用户模式。
五、shutdown命令
安全的关闭或重启系统,它在系统关闭之前给系统上的所有登录用户提示一条警告信息。该命令还允许用户指定一个时间参数,可以是一个精确的时间,也可以是从现在开始的一个时间段,该命令只能由超级用户使用
c: 取消前一个关机命令
h:关机
r:重启
eg:
shutdown -h now 立即关机
shutdown -h 20:30 定时关机
其他关机命令:halt、poweroff、init 0
其他重启命令 :reboot、reboot -h now、init 6
注意:生产环境中,关机命令和重启命令谨慎执行。
六、halt命令
关机
是最简单的关机命令,其实际上是调用shutdown -h命令。halt执行时,杀死应用进程,文件系统写操作完成后就会停止内核
七、cd命令
cd ..:返回上一级
cd:进入当前用户的家目录
cd xx/:打开某某文件夹,/可以省略
cd -:返回上一次的工作目录,可以在最近两次工作目录之间来回切换
cd ~:进入当前用户的家目录
八、touch命令
touch file:在当前目录下创建文件
touch file1 file2
touch /tmp/file:在指定目录下创建
九、mkdir命令
mkdir 目录:创建一个目录
mkdir -p /目录/目录:如果父目录不存在会创建父目录
十、rmdir命令
用于删除空目录
十一、rm命令
rm file:删除当前目录下文件
rm /tmp/file:删除指定目录下文件
rm -r:递归,可替代rmdir,先进入到目录中,询问是否删除目录中的单个文件
rm -rf:强制,删除文件夹下的子文件的时候不再提示
十二、cp命令
cp 目录/源文件 目的地
cp 文件1 文件 2 目的地
cp可以在拷贝的过程中后改名,也可以用来改名(保留源文件)
cp -r可以用来拷贝目录
十三、mv命令
将目标文件(目录)剪切到目的目录下
拷贝改名
十四、cat命令
查看某个文件
-n:显示行号
十五、echo命令
echo 内容 > 文件名称:利用输出重定向向文件中覆盖写入内容
echo 内容 >> 文件名称:增加内容
十六、date命令
显示当前日期
十六、cal命令
显示当前月份日历
十七、more命令
查看文件,以分页的形式,空格或者f查看下一页,回车查看下一行,q/Q退出查看
十八、tail命令
tail -100/-n100:查看末尾一百行
tail -f:查看文件末尾10行,并且动态跟踪文件内容的变化(如果文件删除则停止跟踪,重新创建文件也不会再跟踪了)
tail -F:查看文件末尾10行,并且动态跟踪文件内容的变化(如果文件删除则停止跟踪,重新创建又会继续跟踪)
十九、head命令
查看文件头部十行
head -100:查看前一百行
二十、ln命令
ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。
软链接:ln -s 源文件 目标文件(将某一地址链接到新建文件)
硬链接:ln 源文件 目标文件
硬链接只能链接文件(拷贝+同步更新),以文件副本的形式存在,不占用实际空间,只有在同一个文件系统中才能创建
软链接既可以链接文件,也可以链接目录,以路径的形式存在,类似于Windows操作系统中的快捷方式,可以跨文件系统 ,对一个不存在的文件名进行链接
二十一、which命令
查找系统命令
二十二、whereis命令
搜索命令所在目录,配置文件所在目录及帮助文档路径
二十三、su命令
切换到普通用户不需要密码
普通用户切换到管理员要输入密码
切换后真正具有管理员权限,误操作风险
二十四、sudo命令
以管理员或特定人的身份执行,不需要root密码,只需要执行者的密码
执行操作时只有经过授权的命令才能执行,降低了误操作风险
执行的命令都会被记录到日志中(/var/log/secure)
格式:sudo 命令(以管理员的身份执行)
visudo:创建临时sudo文件,保存检查语法格式
vim /etc/sudoers:必须强行保存
sudos授权格式:(前加%表示组)
用户名 ALL(机器)=(ALL)(以谁的身份执行) 命令的绝对路径,用,分割(所有为ALL)
如果需要不提示执行者密码命令绝对路径前加NOPASSWD
如果以非root身份执行的话需要在sudo与命令间加 -u 以谁的身份执行则事谁的用户名
二十五、scp命令
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的
-r 递归复制整个目录
二十六、service命令
可以启动、停止、重新启动和关闭系统服务,还可以显示所有系统服务的当前状态
service (选项) (参数)
service mysql start/stop/restart/status
二十七、chkconfig命令
用于查看、设置服务的运行级别
语法:chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]
chkconfig --list mysqld:列出mysqld服务设置情况
chkconfig --list sshd
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
二十八、systemctl命令
机器启动相关
systemctl get-default:查看当前默认启动模式
systemctl set-default multi-user.target:更改启动模式为多用户命令行模式
systemctl set-default graphical.target:更改启动模式为图形模式
其实这个命令只是更改了一个软链接而已,/etc/systemd/system/default.target是一个软链接文件,所链接的文件就是各启动模式的配置文件,多用户命令行模式的文件是/usr/lib/systemd/system/multi-user.target,图形模式则是/usr/lib/systemd/system/graphical.target
服务相关
启动一个服务:systemctl start postfix.service
关闭一个服务:systemctl stop postfix.service
重启一个服务:systemctl restart postfix.service
显示一个服务的状态:systemctl status postfix.service