LINUX系统日常使用命令
一、开关机命令
1.shutdown -h now 关闭系统
2.init 0 关闭系统
3.telinit 0 关闭系统
4.shutdown -h hours:minutes 按预定时间关闭系统
5.shutdown -c 取消按预定时间关闭系统
6.shutdown -r now 重启
7.reboot 重启
8.logout 注销
9.su -:切换用户;passwd:修改用户密码
二、常用快捷命令
1、tab = 补全
2、ctrl + l -:清屏,类似clear命令
3、ctrl + r -:查找历史命令(history);ctrl+c = 终止
4、ctrl+k = 删除此处至末尾所有内容
5、ctrl+u = 删除此处至开始所有内容
6、linux中的帮助命令:man、info、--help
【[root@localhost ~]# man ls;[root@localhost ~]# info ls;[root@localhost ~]# ls –help】。退出帮助的话,按快捷键q日常操作命令
三、基本命令:
1、ls
ls命令是列出目录内容的意思(List Directtory Contents)。运行它就是列出文件夹的内容,可能是文件也可能是文件夹。
ls -l命令以详情模式(long listing fashion)列出文件夹的内容。
ls -a命令会列出文件夹里的所有内容,包括以"."开头的隐藏文件。
注意:在Linux中,文件以“.”开头就是隐藏文件,并且每个文件,文件夹,设备或者命令都是以文件对待。
2、lsblk
lsblk就是列出块设备。除了RAM外,以标准的树状输出格式,整齐地显示块设备。
lsblk -l命令以列表格式显示块设备(而不是树状格式)。
注意:lsblk是最有用和最简单的方式来了解新插入的USB设备的名字,特别是当你在终端上处理磁盘/块设备时。
3、uname
"uname"命令就是Unix Name的简写。显示机器名,操作系统和内核的详细信息。
注意:uname显示内核类别,uname -a显示详细信息。
4、history
“history”命令就是历史记录。它显示了在终端中所执行过的所有命令的历史。
5、sudo
“sudo”(super userdo)命令允许授权用户执行超级用户或者其它用户的命令。通过在sudoers列表的安全策略来指定。
注意:sudo允许用户借用超级用户的权限,然而"su"命令实际上是允许用户以超级用户登录。所以sudo比su更安全。
并不建议使用sudo或者su来处理日常用途,因为它可能导致严重的错误如果你意外的做错了事。
6、chmod
“chmod”命令就是改变文件的模式位。chmod会根据要求的模式来改变每个所给的文件,文件夹,脚本等等的文件模式(权限)。
7、chown
“chown”命令就是改变文件拥有者和所在用户组。每个文件都属于一个用户组和一个用户。在你的目录下,使用"ls -l",你就会看到像这样的东西。
8、apt
Debian系列以“apt”命令为基础,“apt”代表了Advanced Package Tool。APT是一个为Debian系列系统(Ubuntu,Kubuntu等等)开发的高级包管理器,在Gnu/Linux系统上,它会为包自动地,智能地搜索,安装,升级以及解决依赖。例如:apt-get install mplayer
9、cal
“cal”(Calender),它用来显示当前月份或者未来或者过去任何年份中的月份。
10、date
“date”命令使用标准的输出打印当前的日期和时间,也可以深入设置。
四、系统常用操作命令
1、指定运行级别
命令:init[0123456]
运行级别:(0:关机;1:单用户;2:多用户状态没有网络服务;3:多用户状态有网络服务;4:系统未使用保留给用户;5:图形界面;6:系统重启)。
常用运行级别是3和5,要修改默认的运行级别可修改文件/etc/inittab的id:5:inittab:这一行的数字。
在启动引导界面的时候按e进入编辑,在进入grub引界面时,请输入e再选中第二个选项按e,再最后输入1[单用户级别],然后按b进入单用户模式。
*:可通过此方法进行linux用户密码的修改。
2、文件显示命令
more:显示文件内容,带分页;
less:显示文件内容带分页;
grep:在文件中查询内容,grep –n “查找内容” 文件名;
| [管道命令]:在linux和unix系统中 | 就是管道命令,把上一个命令的结果交给 | 的后面的命令进行处理。
例:grep –n “查找内容” 文件名 | more
cat:把文件串连接后输出到屏幕或加 > fileName 到另一个档案。
head:格式:head [-n|c num]fileName,说明:显示文件头部内容。没有参数时,显示最前10行。
tail:格式:tail [-n|c num]fileName,说明:显示文件尾部内容。没有参数时,显示最后10行。
cut:格式:cut -cnum1-num2 filename,说明:显示每行从开头算起第 num1 到 num2 的字符。
3、文件搜索命令find
find:搜索文件及目录
在linux中,因为文件系统是以级别式的结构来组成的,所以要在整个系统中找到特定的文件和目录并不是件容易的事。而find命令可以解决上述问题。
1、在特定的目录下搜索并显示指定名称的文件和目录。
find / -name man:意思是说从根目录开始搜索名称为man的文件或目录。
2、搜索一段时间内被存取/变更的文件或目录
find / home–amin -10:十分钟内存取的文件或目录
find / home–atime -10:十小时内存取的文件或目录
find / home–cmin -10:十分钟内更改过的文件或目录
find / home–ctime -10:十小时内更改过的文件或目录
3、搜索指定大小的文件
find / home–size +10k:意思是说查找/home目录下大小为10K的文件。
4、重定向命令
重定向命令:管道定向命令“>”为覆盖,“>>”追加写在原文件内容后面。
ls –l >a.txt 列表的内容写入文件a.txt中(覆盖写)。
ls –al>> aa.txt 列表的内容追加到文件aa.txt的末尾。
5、其他命令
who:格式:who - [husfV] [user]。说明:显示有哪些用户登录到系统中,显示的信息包含用户ID,使用的终端,上线时间,呆滞时间,CPU使用量,动作等等。相关命令 : who am i:显示当前用户是谁。
sleep:格式:sleep [--help] [--version] number[smhd]。说明 : sleep 可以用来将当前动作延迟一段时间。
kill:格式:kill [ -s signal ] pid ... 或 kill -l [ signal ]。说明:kill送出一个特定的信号 (signal) 给进程号为 pid 的进程。根据该信号而做特定的动作,若没有指定,默认是送出终止(TERM)信号。
ps:格式:ps [options] [--help]。说明:显示进程的名称、占用资源、状态等。
top:说明:显示CPU的使用率、内存大小、内存使用率、进程状态等。
五、磁盘空间
df -h 显示已经挂载的分区列表
ls -lSr |more 以尺寸大小排列文件和目录
du -sh dir1 估算目录 'dir1' 已经使用的磁盘空间'
du -sk * | sort -rn 以容量大小为依据依次显示文件和目录的大小
rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n 以大小为依据依次显示已安装的rpm包所使用的空间 (fedora, redhat类系统)
dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n 以大小为依据显示已安装的deb包所使用的空间 (ubuntu, debian类系统)
六、初始化一个文件系统
mkfs /dev/hda1 在hda1分区创建一个文件系统
mke2fs /dev/hda1 在hda1分区创建一个linux ext2的文件系统
mke2fs -j /dev/hda1 在hda1分区创建一个linux ext3(日志型)的文件系统
mkfs -t vfat 32 -F /dev/hda1 创建一个 FAT32 文件系统
fdformat -n /dev/fd0 格式化一个软盘
mkswap /dev/hda3 创建一个swap文件系统
七、SWAP文件系统
mkswap /dev/hda3 创建一个swap文件系统
swapon /dev/hda3 启用一个新的swap文件系统
swapon /dev/hda2 /dev/hdb3 启用两个swap分区
八、备份
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 同步两边的目录
rsync -rogpav -e ssh --delete /home ip_address:/tmp 通过SSH通道rsync
rsync -az -e ssh --delete ip_addr:/home/public /home/local 通过ssh和压缩将一个远程目录同步到本地目录
rsync -az -e ssh --delete /home/local ip_addr:/home/public 通过ssh和压缩将本地目录同步到远程目录
dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz' 通过ssh在远程主机上执行一次备份本地磁盘的操作
dd if=/dev/sda of=/tmp/file1 备份磁盘内容到一个文件
tar -Puf backup.tar /home/user 执行一次对 '/home/user' 目录的交互式备份操作
( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p' 通过ssh在远程目录中复制一个目录内容
( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p' 通过ssh在远程目录中复制一个本地目录
tar cf - . | (cd /tmp/backup ; tar xf - ) 本地将一个目录复制到另一个地方,保留原有权限及链接
find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents 从一个目录查找并复制所有以 '.txt' 结尾的文件到另一个目录
find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2 查找所有以 '.log' 结尾的文件并做成一个bzip包
dd if=/dev/hda of=/dev/fd0 bs=512 count=1 做一个将 MBR (Master Boot Record)内容复制到软盘的动作
dd if=/dev/fd0 of=/dev/hda bs=512 count=1 从已经保存到软盘的备份中恢复MBR内容