Linux命令惯用法
1 硬连接与软连接
ln a b
这是硬连接,a文件和b文件是同一个inode,连接数为2
ln -s a c
这是符号连接,c文件是一种特殊的文件,即连接文件,指向a,c文件的inode和a文件的inode不同。
可用ls -li来查看inode号。
2想要动态的查看一个文件内容的变化,可以用tail命令
如:tail -f /var/log/messages #将文件最尾部内容显示在屏幕上,并不断刷新显示,按ctrl+c或delete退出。
3查看二进制文件的内容,用od,-t代表查看类型,d代表decimal十进制,c代表character字符。
#od -t dc /usr/bin/passwd
以十六进制方式查看文件
#od -t x2 /home/zhc/data
4文件的隐藏属性(root特权指令,在ext2/ext3文件系统中)
chattr +i test (文件不能被删除,改名,写入,即immutable,不可变的)
chattr +a test (文件只读,append only)
lsattr查看文件的隐藏属性。
5查看文件的类型用file命令,可知文件是纯文本文件还是数据文件还是可执行文件。
6which是在环境变量里查找可执行文件,whereis和locate是在数据库中查找文件,但是新建的文件可能查找不到,因为数据库还没有更新,这时只要updatedb更新数据库即可。find / -name mysql -print是在文件系统根目录下查找文件名为mysql的所有文件并打印出来。
7一个文件记录的时间参数有三种,分别是access time(atime),status time (ctime),modification time(mtime),ls默认显示的是mtime。
8文件具有suid的特殊权限时,代表当用户执行此二进制程序时,在执行过程中用户会暂时具有程序所有者的权限;目录具有sgid特殊权限时,代表用户在这个目录下面新建的文件用户组都会与该目录的用户组名相同;目录具有sbit的特殊权限时,代表在该目录下用户创建的文件只有自己与root能够删除。
9使用文件构建swap
dd if=/dev/zero of=/tmp/swap bs=1M count=128
ll -h /tmp/swap
mkswap /tmp/swap
free
swapon /tmp/swap
free
swapon -s
swapoff /tmp/swap
free
10挂载原有分区下的大文件,作为存储设备
dd if=/dev/zero of=/home/loopdev bs=1M count=512
ll -h /home/loopdev
mkfs -t ext3 /home/loopdev
y
mount -o loop /home/loopdev /media/cdrom
df
11查看日志消息
dmesg
清楚缓冲区的消息 dmesg -c
12压缩与解压缩
tar -jxvf filename.tar.bz2
tar -zxvf filename.tar.gz
tar -jcvf /root/etc.tar.bz2 /etc
tar -zcvf /root/etc.tar.gz /etc
tar -zxvf archive_name.tar.gz -->解压缩到当前目录下
由于-f属性是指filename,所以,f一定得紧挨着filename才行。
tar -zxvf filename.tgz -C /tmp是什么意思呢?
可以这样理解,解压到/tmp目录下,-C的意思是切换目录。
13查看在机器上一个运行了多少个进程
ps aux | wc -l
ps afx 树形结构
实时查看进程,按cpu使用率排序 top
按内存使用大小排序 top -
14查看端口、进程等
netstat -anp|grep 8080 直接查看指定端口的进程pid
#结果为
协议 本地地址 外部地址 状态 PID
TCP 0.0.0.0:80 0.0.0.0:8080 LISTENING 5144/java
ps -aux | grep tomcat
netstat -natlp用的比较多
lsof表示list open file,它能找到打开了具体端口的进程信息
lsof -i TCP:9999
#找到打开了9999端口的TCP的进程
15测试两台机器之间是否相通
telnet-->测试远程端口是否连通
telnet 10.4.200.114 1433
①端口通畅的情况
Trying 10.4.200.114...
Connected to 10.4.200.114 (10.4.200.114).
Escape character is '^]'.
②端口不通的情况
Trying 10.4.200.114...
如果能ping通,但端口不通,说明有可能被防火墙禁用了该端口,解决办法:
linux下:查看防火墙:iptables –L
即时生效,重启后失效 (开启: service iptables start ,关闭: service iptables stop )
设置防火墙:setup
16查看磁盘等信息
df -->查看磁盘空间(diskfree)
df -lh /usr/local
21,du-->查看已使用空间(diskused)
du -h /usr
du -h --max-depth=1 查看文件夹大小
du -sh /home 查看已使用的空间,符合人类的思维
17查看tomcat日志文件
tail -f /usr/share/tomcat7/logs/catalina.out
没有权限先换权限:
sudo su tomcat s /usr/bash