2.linux常用命令--整理学习笔记
默认进入系统,我们会看到这样的字符:
[root@localhost ~]#,其中#代表当前是root用户登录,如果是$表示当前为普通用户。
man 命令:查看命令的使用方法。
显示目录和文件的命令
ls:查看当前目录所有的文件和目录,
ls -l 显示文件和目录的详细资料
ls -a 查看所有的文件,包括隐藏文件,以.开头的文件,
ls -F 在每个输出项后追加文件的类型标识符,具体含义:“*”表示具有可执行权限的普通文件,“/”表示目录,“@”表示符号链接,“|”表示命令管道FIFO,“=”表示sockets套接字。当文件为普通文件时,不输出任何标识符
ls *[0-9]* 显示包含数字的文件名和目录名
显示列表中前面 10个字符确定不同用户能对文件干什么
- 第一个字符代表 文件(-)、目录(d),链接(l)
- 其余字符每3个一组(rwx),读(r)、写(w)、执行(x)
- 第一组rwx:文件所有者的权限,是读、写和执行
- 第二组rw-:与文件所有者同一组的用户的权限,是读、写但不能执行
- 第三组r--:不与文件所有者同组的其他用户的权限,是读不能写和执行
也可用数字表示为:r=4,w=2,x=1 因此rwx=4+2+1=7
dir:用于显示指定文件夹和目录的命令
tree:以树状图列出目录内容
du:显示目录或文件大小
改变目录和查看当前目录命令
cd:进入工作目录
cd /home ;进入/home目录 cd /root 进入/root目录 ;
cd ../返回上一级目录;cd ./当前目录;
cd ../.. 返回上两级目录
cd 进入个人的主目录
cd ~user1 进入个人的主目录
(.和..可以理解为相对路径;例如cd /home/test ,cd加完整的路径,可以理解为绝对路径)
pwd:显示当前用户所在工作目录位置
创建和删除目录的命令
mkdir创建目录,用法mkdir test ,命令后接目录的名称。
rmdir 删除空目录
rm -f:用于删除不为空的目录,rm 删除文件或者目录,用法 rm –rf test.txt (-r表示递归,-f表示强制)。
创建和删除,重命名,复制文件的命令
touch 创建文件,用法,touch test.txt,如果文件存在,则表示修改当前文件时间。
rm:删除文件或目录
mv 重命名或者移动文件或者目录,用法, mv old.txt new.txt
cp 拷贝文件,用法 cp old.txt /tmp/new.txt ,常用来备份;如果拷贝目录需要加 –r参数。
vi:创建一个新的文件
vi 修改某个文件,vi有三种模式:
命令行模式、文本输入模式、末行模式。
默认vi打开一个文件,首先是命令行模式,然后按i进入文本输入模式,可以在文件里写入字符
等等信息。写完后,按esc进入命令模式,然后输入:进入末行模式,例如输入:wq表示保存退出。
如果想直接退出,不保存,可以执行:q!, q!叹号表示强制退出。
修改目录,文件权限和属主及数组命令
chmod:用于改变指定目录或文件的权限。
chmod 755 abc:赋予abc权限rwxr-xr-x
chmod u=rwx,g=rx,o=rx abc:同上u=用户权限,g=组权限,o=不同组其他用户权限
chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限
chmod a+r abc:给所有用户添加读的权限
改变所有者(chown)和用户组(chgrp)命令
chown xiaoming abc:改变abc的所有者为xiaoming
chgrp root abc:改变abc所属的组为root
chown root ./abc:改变abc这个目录的所有者是root
chown ‐R root ./abc:改变abc这个目录及其下面所有的文件和目录的所有者是root
useradd创建用户,用法 useradd wugk ,userdel删除用户。
groupadd创建组,用法 groupadd wugk1 ,groupdel删除组。
显示文件内容的命令
cat:用于显示指定文件的全部内容
more:用分页的形式显示指定文件的内容
less:用分页的形式显示指定文件的内容,区别是more和less翻页使用的操作键不同。
区别:
cat是一次性显示整个文件的内容,适用于文件内容少的情况;
more和less一般用于显示文件内容超过一屏的内容,并且提供翻页的功能。more比cat强大,提供分页显示的功能,less比more更强大,提供翻页,跳转,查找等命令。而且more和less都支持:用空格显示下一页,按键b显示上一页。
压缩格式与压缩解压命令
常见的五种压缩格式
- .zip
- .gz
- .bz2
- .tar.gz
- .tar.bz2
由前文可知,gz和bz2压缩格式都没有对应的命令去压缩整个目录
想要做到压缩目录,需要遵循如下步骤
1. 将目录打包
2. 将打包后的文件压缩
打包需要使用 tar 命令
● 打包
tar -cvf 打包文件名 源文件
选项:
-c 打包
-v 显示打包过程
-f 指定打包后的文件名
● 解包
tar -xvf 打包文件名
选项:
-x 解包
|
下面介绍的两种压缩格式的命令,是linux中最常用的压缩命令,其本质都是通过一条命令,实现先打包后压缩
4. .tar.gz
- 压缩
tar -zcvf 压缩包名(.tar.gz) 源文件
选项:
-z:压缩为.tar.gz格式
- 解压
tar -zxvf 压缩包名(.tar.gz)
5. .tar.bz2
- 压缩
tar -jcvf 压缩包名(.tar.bz2) 源文件
可压缩多个文件
- 解压
tar -jxvf 压缩包名(.tar.bz2)
使用 -C 可以指定解压缩位置
查找命令
find查找文件或目录,用法 find /home -name “test.txt”,命令格式为:
find 后接查找的目录,-name指定需要查找的文件名称,名称可以使用*表示所有。
find /home -name “*.txt” ;查找/home目录下,所有以.txt结尾的文件或者目录。
find / -user user1 搜索属于用户 'user1' 的文件和目录
find /home/user1 -name \*.bin 在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件
find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件
find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件
find / -name \*.rpm -exec chmod 755 '{}' \; 搜索以 '.rpm' 结尾的文件并定义其权限
find / -xdev -name \*.rpm 搜索以 '.rpm' 结尾的文件,忽略光驱、捷盘等可移动设备
locate \*.ps 寻找以 '.ps' 结尾的文件 - 先运行 'updatedb' 命令
whereis:查找指定的文件源和二进制文件和手册等
which:用于查询命令或别名的位置。
grep:在指定的文件或标准输出,标准输入内,查找满足条件的内容。
关机和重启计算机的命令
shutdown:-r 关机后立即重启
-k 并不真正的关机,而只是发出警告信息给所有用户
-h 关机后不重新启动
shutdown -h now 关闭系统(1)
poweroff:用于关机和关闭电源
init:改变系统运行级别
0级用于关闭系统
1 级用于单一使用者模式
2级用来进行多用户使用模式(但不带网络功能)
3级用来进行多用户使用模式(带网络全功能)
4级用来进行用户自定义使用模式
5级表示进入x windows时的模式
6级用来重启系统
reboot: 用于计算机重启
logout:退出系统
用户操作命令
Su:切换用户命令
Sudo:以系统管理员的身份执行命令
Passwd:用于修改用户的密码
useradd/userdel:添加用户/删除用户
网络命令
tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。
netstate -nl :查看网络状态 netstate -nlu :查看UDP状态
ifconfig 查看网络配置 ifconfig -a:所有的网卡 ifconfig eth0 up/down 打开或关闭eth0设备 ifconfig 可以用来配置IP和网络掩码。
系统硬件命令
cat /proc/cpuinfo 显示CPU info的信息
- processor 逻辑处理器的id。
- physical id 物理封装的处理器的id。
- core id 每个核心的id。
- cpu cores 位于相同物理封装的处理器中的内核数量。
- siblings 位于相同物理封装的处理器中的逻辑处理器的数量。
cat /proc/meminfo 查看内存使用
cat /proc/version 显示内核的版本
cat /etc/passwd用户密码文件
cat /proc/partitions查看目前机器中的所有磁盘及分区情况
内核版本:uname -r 或 uname -a
内存容量:free -m
操作系统版本:cat /etc/issue
date 显示系统日期
cal 2007 显示2007年的日历表
who:显示系统中有那些用户在使用。
-ami 显示当前用户
-u:显示使用者的动作/工作
-s:使用简短的格式来显示
-v:显示程序版本
uptime:显示系统运行了多长时间
clear:清屏
ps命令用来列出系统中当前运行的那些进程
[root@localhost test6]# ps -ef | grep vim
pstree:以树状方式显示系统中所有的进程
kill: 杀死一些特定的进程
top命令经常用来监控Linux的系统状况,比如cpu、内存的使用
df -h 显示已经挂载的分区列表
mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘 - 确定目录 '/ mnt/hda2' 已经存在
umount /dev/hda2 卸载一个叫做hda2的盘 - 先从挂载点 '/ mnt/hda2' 退出
mount /dev/hdc /mnt/cdrecorder 挂载一个cdrw或dvdrom
mount -o loop file.iso /mnt/cdrom 挂载一个文件或ISO镜像文件
mount /dev/sda1 /mnt/usbdisk 挂载一个usb 捷盘或闪存设备
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个网络共享