linux常用的60个命令
linux笔记全(无图版)

linux笔记全(⽆图版)1、ls 查看当前⽬录下的所有内容⿊⾊的是⽂件,蓝⾊的是⽂件夹,也就是⽬录2、rm -f anaconda-ks. cfg 彻底删除⽂件(如不确定,则需要先保存备份,也就是快照)3、ifconfig 查看⽹卡的配置信息(ip地址等)4、ifconfig ens33 192.168.18. 201 /24(⽹络地址/⼦⽹掩码)更改ip地址5、systemctl restart network 重启⽹络服务6、桥接模式,直接可以进⾏通信(同⼀⽹段,配置ip)7、能不能通信的2个条件:在同⼀个物理⽹络内,ip地址也在同⼀⽹段内8、仅主机模式,虚拟机和物理机不能进⾏通信,相当于虚拟机和物理机进⾏了隔离与笔记本(真机)通信截图9、NAT模式,⾃动分配⽹络地址和⽹关,以及dns,可以直接上⽹可以访问互联⽹内的主机,但互联⽹内的主机不能访问本机(max特点)10、route -n 查看⽹关11、cat /etc/resolv. conf 查看dns(注意cat后⾯有⼀个空格,空格不可少)12、验证nat模式可以直接上⽹13、shell:通常指linux的字符界⾯,图形界⾯和字符界⾯都属于shell,但图形界⾯的shell常称为gui,字符界⾯的shell常称为cli14、cat /etc/shells 查看⽂件内容(linux⾥⾯提供的所有的shell)15、linux默认使⽤的shell是bash的shell16、echo $SHELL 查看当前使⽤的shell17、shell默认指的是bash,它的应⽤是最⼴泛的18、linux是彻底的多⽤户多任务,它可以直接多个⽤户同时进⾏操作19、ctrl+alt+f2-f6 对应5个shell ctrl+alt+f1 开始图形界⾯shell 作⽤:如何开始shell(也就是如何打开命令界⾯)20、虚拟终端的缩写为tty, 在字符界⾯下执⾏“tty"命令就可以显⽰⽤户⽬前所在的终端编号(终端名称)。
linux必须知道的60个常用命令

linux必学的60个命令来源: ChinaUnix博客日期: 2008.01.28 18:50 (共有条评论) 我要评论linux必学的60个命令Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。
所以,在Linux系统上工作离不开使用系统提供的命令。
要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。
不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。
这里笔者把比较重要和使用频率最多的命令,按照它们在系统中的作用分成下面六个部分一一介绍。
◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;◆ 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、nslookup;◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。
immortality按:请用ctrl+f在本页中查找某一部分的内容或某一命令的用法。
Linux必学的60个命令(1)-安装与登陆命令login1.作用login的作用是登录系统,它的使用权限是所有用户。
100个常用的linux命令

100个常用的linux命令100个常用的Linux命令Linux作为一种常用的操作系统,拥有丰富的命令用于管理和操作系统。
本文将介绍100个常用的Linux命令,并对其功能和使用方法进行详细的说明和解释。
1. ls:列出当前目录下的文件和文件夹。
2. cd:切换当前目录。
3. pwd:显示当前工作目录的绝对路径。
4. mkdir:创建新的目录。
5. rm:删除文件或目录。
6. cp:复制文件或目录。
7. mv:移动文件或目录。
8. touch:创建新的空文件。
9. cat:查看文件内容。
10. more:逐页显示文件内容。
11. less:逐行显示文件内容。
12. grep:在文件中搜索指定的字符串。
13. find:在文件系统中搜索文件。
14. tar:打包和解压文件。
15. gzip:压缩文件。
16. gunzip:解压缩文件。
17. chown:修改文件的所有者。
18. chmod:修改文件的权限。
19. chgrp:修改文件的所属组。
20. ps:显示当前运行的进程。
21. top:实时显示系统的运行情况。
22. kill:终止指定的进程。
23. ifconfig:查看和配置网络接口。
24. ping:测试网络连接。
25. ssh:远程登录到其他主机。
26. scp:在本地主机和远程主机之间复制文件。
27. wget:下载文件。
28. curl:通过URL传输数据。
29. head:显示文件的前几行。
30. tail:显示文件的后几行。
31. du:查看文件或目录的磁盘使用情况。
32. df:查看文件系统的磁盘空间使用情况。
33. free:查看内存的使用情况。
34. uname:显示系统信息。
35. who:显示当前登录的用户。
36. su:切换用户身份。
37. sudo:以管理员身份执行命令。
38. history:查看命令历史记录。
39. man:查看命令的帮助文档。
40. info:查看命令的详细信息。
Linux必学的60个命令六(其它命令)

Linux必学的重要命令(1)在前面几讲中,我们把Linux命令按照在系统中的作用分成几个部分分别予以介绍。
但是,还有一些命令不好划分,然而学习它们同样是比较重要的。
tar1.作用tar命令是Unix/Linux系统中备份文件的可靠方法,几乎可以工作于任何环境中,它的使用权限是所有用户。
2.格式tar [主选项+辅选项] 文件或目录3.主要参数使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。
主选项:-c 创建新的档案文件。
如果用户想备份一个目录或是一些文件,就要选择这个选项。
-r 把要存档的文件追加到档案文件的未尾。
例如用户已经做好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。
-t 列出档案文件的内容,查看已经备份了哪些文件。
-u 更新文件。
就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。
-x 从档案文件中释放文件。
辅助选项:-b 该选项是为磁带机设定的,其后跟一数字,用来说明区块的大小,系统预设值为20(20×512 bytes)。
-f 使用档案文件或设备,这个选项通常是必选的。
-k 保存已经存在的文件。
例如把某个文件还原,在还原的过程中遇到相同的文件,不会进行覆盖。
-m 在还原文件时,把所有文件的修改时间设定为现在。
-M 创建多卷的档案文件,以便在几个磁盘中存放。
-v 详细报告tar处理的文件信息。
如无此选项,tar不报告文件信息。
-w 每一步都要求确认。
-z 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。
4.应用说明tar 是Tape Archive(磁带归档)的缩写,最初设计用于将文件打包到磁带上。
如果下载过Linux的源代码,或许已经碰到过tar文件请注意,不要忘了Linux是区分大小写的。
实用linux 命令集sss

查看软件xxx安装内容:dpkg -L xxx查找软件库中的软件:apt-cache search 正则表达式查找软件库中的软件:aptitude search 软件包查找文件属于哪个包:dpkg -S filename查找文件属于哪个包:apt-file search filename查询软件xxx依赖哪些包:apt-cache depends xxx查询软件xxx被哪些包依赖:apt-cache rdepends xxx增加一个光盘源:sudo apt-cdrom add系统升级:sudo apt-get updatesudo apt-get dist-upgrade清除已删除包的残馀配置文件:1.dpkg -l |grep ^rc|awk {print $2} |sudo xargs dpkg -P 编译时缺少h文件的自动处理:1.sudo auto-apt run ./configure查看安装软件时下载包的临时存放目录:1.ls /var/cache/apt/archives备份当前系统安装的所有包的列表:1.dpkg --get-selections | grep -v deinstall > ~/somefile 从备份的安装包的列表文件恢复所有包:1.dpkg --set-selections < ~/somefilesudo dselect清理旧版本的软件缓存:1.sudo apt-get autoclean清理所有软件缓存:1.sudo apt-get clean删除系统不再使用的孤立软件:1.sudo apt-get autoremove查看包在服务器上面的地址:1.apt-get -qq --print-uris install ssh | cut -d\\' -f2查看内核:1.uname -a查看Ubuntu版本:1.cat /etc/issue 或 lsb_release -a查看内核加载的模块:1.lsmod查看PCI设备:1.lspci查看USB设备:1.lsusb -v查看网卡状态:1.sudo ethtool eth0查看CPU信息:1.cat /proc/cpuinfo显示当前硬件信息:1.sudo lshw显示系统运行时间:1.uptime查看硬盘的分区:1.sudo fdisk -l硬盘分区:1.sudo fdisk /dev/sda硬盘格式化:1.sudo mkfs.ext3 /dev/sda1硬盘检查(请不要检查已经挂载的分区,否则容易损坏数据):1.sudo fsck /dev/sda1分区挂载:1.sudo mount -t 文件系统类型 (-o nls=utf8 或 -o iocharset=utf8) 设备路经访问路经分区卸载:1.sudo umount 目录名或设备名查看IDE硬盘信息:1.sudo hdparm -i /dev/hda查看STAT硬盘信息 :1.sudo hdparm -I /dev/sda 或 sudo blktool /dev/sda id 查看硬盘剩馀空间:1.df查看目录占用空间:1.du -hs 目录名优盘没法卸载:1.syncfuser -km /media/usbdisk查看硬盘当前读写情况:1.sudo iostat -x 2查看当前的内存使用情况:1.free动态显示进程执行情况:1.top查看当前有哪些进程:1.ps -A查看当前进程树:1.pstree中止一个进程:1.kill 进程号或 killall 进程名强制中止一个进程:1.kill -9 进程号或 killall -9 进程名图形方式中止一个程序:1.xkill 出现骷髅标志的鼠标,点击需要中止的程序即可查看进程打开的文件:1.lsof -p显示开启文件abc.txt的进程 :1.lsof abc.txt显示22端口现在运行什么程序 :1.lsof -i :22显示nsd进程现在打开的文件 :1.lsof -c nsd在后台运行程序,退出登录后,并不结束程序 :1.nohup 程序 &详细显示程序的运行信息 :1.strace -f -F -o outfile <cmd>增加系统最大打开文件个数:1.ulimit -n 4096 或 echo 4096 > /proc/sys/fs/file-max 配置 ADSL :1.sudo pppoeconfADSL手工拨号:1.sudo pon dsl-provider激活 ADSL:1.sudo /etc/ppp/pppoe_on_boot断开 ADSL :1.sudo poff查看拨号日志:1.sudo plog如何设置动态域名:1.w3m -no-cookie -dump 'http://usere:pass@members.332/dyndns/update?system=dyndns&hostname=yourdns '根据IP查网卡地址 :1.arping IP地址根据IP查电脑名 :1.nmblookup -A IP地址查看当前IP地址 :1.ifconfig eth0 |awk '/inet/ {split($2,x,\":\")print x[2]}'查看当前外网的IP地址 :1.w3m -no-cookie -dump |grep -o '[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}'查看当前监听80端口的程序 :1.lsof -i :80查看当前网卡的物理地址:1.arp -a | awk '{print $4}'同一个网卡增加第二个IP地址 :1.sudo ifconfig eth0:0 1.2.3.4 netmask 255.255.255.0立即让网络支持nat :1.echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward sudo iptables -t nat -I POSTROUTING -j MASQUERADE查看路由信息:stat -rn 或 sudo route -n手工增加一条路由 :1.sudo route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1手工删除一条路由:1.sudo route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1修改网卡MAC地址的方法 :1.sudo ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE统计当前IP连接的个数 :stat -na|grep ESTABLISHED|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -r -n屏蔽IPV6 :1.echo 'blacklist ipv6' | sudo tee /etc/modprobe.d/blacklist-ipv6察看当前网络连接状况以及程序 :1.sudo netstat -atnp查看ADSL的当前流量:1.sudo ethstatus -i ppp0查看域名的注册备案情况:1.whois 查看到某一个域名的路由情况:1.tracepath 重新从服务器获得IP地址 :1.sudo dhclient下载网站文档:1.wget -r -p -np -k 如何5个线程下载:1.axel -n 5 /downloadfile.zip 添加一个服务:1.sudo update-rc.d 服务名 defaults 99删除一个服务 :1.sudo update-rc.d 服务名 remove临时重启一个服务:1./etc/init.d/服务名 restart临时关闭一个服务:1./etc/init.d/服务名 stop临时启动一个服务:1./etc/init.d/服务名 start增加用户:1.sudo adduser 用户名删除用户:1.sudo deluser 用户名修改当前用户的密码:1.passwd修改用户密码:1.sudo passwd 用户名修改用户资料:1.sudo chfn userid如何禁用某个帐户:1.sudo usermod -L 用户名或 sudo passwd -l 用户名如何启用某个帐户:1.sudo usermod -U 用户名或 sudo passwd -u 用户名增加用户到admin组:1.sudo usermod -G admin -a 用户名配置默认Java使用哪个 :1.sudo update-alternatives --config java终端设置代理 :1.export http_proxy=http://xx.xx.xx.xx:xxx修改系统登录信息:1.sudo vim /etc/motd使用sun的java编译器:1.sudo update-java-alternatives -s java-6-sun切换输入法引擎:1.im-switch -c转换文件名由GBK为UTF8 :1.convmv -r -f cp936 -t utf8 --notest --nosmart *转换文件内容由GBK到UTF8 :1.iconv -f gbk -t utf8 $i > newfile转换 mp3 标签编码 :1.sudo apt-get install python-mutagenfind . -iname '*.mp3' -execdir mid3iconv -e GBK {} \\控制台下显示中文 :1.sudo apt-get install zhconzhcon --utf8 --drv=vgalftp 登录远程Windows中文FTP :1.lftp :~>set ftp:charset GBKPDF 文件乱码 :1.sudo apt-get install xpdf-chinese-simplified xpdf-chinese-traditional poppler-data一屏查看文件内容 :1.cat 文件名分页查看文件内容:1.more 文件名可控分页查看文件内容:1.less 文件名根据字符串匹配来查看文件部分内容:1.grep 字符串文件名显示包含字符串的文件名:1.grep -l -r 字符串路径显示不包含字符串的文件名:1.grep -L -r 字符串路径快速查找某个文件:1.find 目录 -name 文件名创建两个空文件:1.touch file1 file2递归式创建一些嵌套目录:1.mkdir ?p /tmp/xxs/dsd/efd递归式删除嵌套目录:1.rm ?fr /tmp/xxs回当前用户的宿主目录:1.cd ~查看当前所在目录的绝对路经:1.pwd列出当前目录下的所有文件:1.ls -a移动路经下的文件并改名:1.mv 路经/文件牋/新路经/新文件名复制文件或者目录:1.cp -av 原文件或原目录新文件或新目录查看文件类型:1.file filename对比两个文件之间的差异:1.diff file1 file2显示xxx文件倒数6行的内容 :1.tail -n 6 xxx不停地显示最新的内容 :1.tail -n 10 -f /var/log/apache2/access.log查看文件第五行到第10行的内容 :1.sed -n '5,10p' /var/log/apache2/access.log查找关于xxx的命令 :1.apropos xxx 或 man -k xxx通过ssh传输文件 :1.scp -rp /path/filename username@remoteIP:/path 把所有文件的后辍由rm改为rmvb :1.rename 's/.rm$/.rmvb/' *把所有文件名中的大写改为小写:1.rename 'tr/A-Z/a-z/' *删除特殊文件名 --help.txt 的文件:1.rm -- --help.txt 或 rm ./--help.txt查看当前目录的子目录:1.ls -d */. 或 echo */.将最近30天访问过的文件移动到上级back目录 :1.find . -type f -atime -30 -exec mv {} ../back \\显示一小时以内的包含 xxxx 的文件:1.find . -type f -mmin -60|xargs -i牋grep -l xxxx '{}'显示最近2小时到8小时之内的文件:1.find . -mmin +120 -mmin -480 -exec more {} \\删除修改时间在30天之前的文件 :1.find . -type f -mtime +30 -mtime -3600 -exec rm {} \\删除创建时间在30天之前的文件 :1.find . -type f -ctime +30 -ctime -3600 -exec rm {} \\删除掉guest的以avi或rm结尾的文件:1.find . -name '*.avi' -o -name '*.rm' -user 'guest' -exec rm {} \\ 删除掉不以java和xml结尾7天没有使用的文件 :1.find . ! -name *.java ! -name ‘*.xml’ -atime +7 -exec rm {} \\ 删除所有的 .svn 目录 :1.find . -name .svn -type d -exec rm -fr {} \\删除所有以“~”结尾的临时文件 :1.find . -name "*~" -exec rm {} \\统计当前文件个数:1.ls .|wc -w统计当前目录个数:1.ls -l |grep ^d|wc -l显示当前目录下2006-01-01的文件名 :1.ls -l |grep 2006-01-01 |awk '{print $8}'使用ssh方式同步远程数据到本地目录 :1.rsync -Pa -I --size-only --delete --timeout=300 Remote_IP:/home/ubuntu /backup 增加 7Z 压缩软件:1.sudo apt-get install p7zip p7zip-full p7zip-rar增加 rar 软件压缩和解压缩支持 :1.sudo apt-get install rar unrar解压缩 xxx.tar.gz :1.tar -zxvf xxx.tar.gz解压缩 xxx.tar.bz2 :1.tar -jxvf xxx.tar.bz2压缩aaa bbb目录为xxx.tar.gz :1.tar -zcvf xxx.tar.gz aaa bbb压缩aaa bbb目录为xxx.tar.bz2 :1.tar -jcvf xxx.tar.bz2 aaa bbb增加 lha 支持 :1.sudo apt-get install lha增加解 cab 文件支持 :1.sudo apt-get install cabextract显示日历:1.cal设置日期:1.date -s mm/dd/yy设置时间:1.date -s HH:MM将时间写入CMOS :1.hwclock --systohc查看CMOS时间 :1.hwclock --show读取CMOS时间 :1.hwclock --hctosys从服务器上同步时间 :1.sudo ntpdate 设置电脑的时区为上海:1.sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime关闭UTC,将当前时间写入CMOS。
(完整版)Linux常用的20个命令

2、查看当前所在目录完整路径:pwd
shutdown
关机或重启命令
#立刻关机:shutdown —h now
#60s后重启:shutdown —r —t 60
netstat
显示网络相关信息
#列出所有端口:netstat -a
du
查看目录使用情况
grep:文本内容搜索;
grep success*/*查找当前目录下面所有文件里面含有success字符的文件
passwd命令
可以设置口令
history命令
可以显示用户过去使用的命令
finger命令
可以让使用者查询一些其他使用者的资料
finger root //查看root的资料
file命令
该命令用于判断接在file命令后的文件的基本数据,因为在Linux下文件的类型并不是以后缀为分的,所以这个命令对我们来说就很有用了,它的用法非常简单,基本语法如下:
#在/opt/test目录下创建目录img,若无test目录,先创建test目录:mkdir -p/opt/test/img
cat
查看文件内容
#查看desc。txt的内容:cat desc.txt
more
分页查看文件内容
#分页查看desc。txt文件的内容:more desc。txt
tail
查看文件尾部内容
#在opt目录下查找以。txt结尾的文件:find /opt -name '。txt’
ln
创建链接文件
#创建目录/opt/test的符号链接:ln —s /opt/test。/link2test
man
命令帮助
#对你不熟悉的命令提供帮助和解释:man ls就可以查看ls相关的用法
Linux命令英文全称

修改登录界面启动:vi /etc/inittab
3 文本 5 图像
使用 man或info 查看有关命令的帮助
使用fdisk -l 显示分区情形;df -h显示磁盘使用情形
使用du -sh /*查看某个(根目录所有文件夹)目录占有磁盘情形
显示变量内容:echo ${f}
查看环境变量:env
不需要换行:-n
查看运行的进程:ps
杀掉某个线程:kill 1186(1186是线程号)
将某个进程设为后台运行:find / -name passwd &(将find / -name passwd进程设为后台运行)
管道:ls -l /dev | more (列出dev目录下的详细信息 又要分页)
若无-s就是硬链接)
查看DNS客户端配置:more /etc/resolv.conf
查看ip地址:ifconfig(看以上两者的ip是否相符,若不相符 使用下面的命令修改)
更改网络配置:netconfig(修改好后,要使用service network restart重启网络后方能生效)
查看默认路关:route -n
设置文件的读写权限:chmod u+w 1.c(增加文件拥有者对1.c写的权限)
chmod g-r 1.c( 删除工作组对1.c读的权限)
chmod o+x 1.c(增加其他用户对1.c的执行权限)
chmod a-w 1.c(删除所有用户对1.c写的权限)
列出文件索引好:ls -i
构建软硬连接:in -s /home/lxt008 /008(将lxt008链接至008 即008是lxt008的快捷方式
常用Linux系统Debug命令

常用Linux系统Debug命令常用Linux系统Debug命令命令系统,是一种计算机代码控制系统。
常用Linux系统Debug 命令有哪些呢?下面是相关的知识,欢迎阅读。
1、查看TCP连接状态netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rnnetstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}'netstat -n | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key," ",state[key]}'netstat -n | awk '/^tcp/ {++arr[$NF]};END {for(k in arr) print k," ",arr[k]}'netstat -n |awk '/^tcp/ {print $NF}'|sort|uniq -c|sort -rnnetstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rnnetstat -n | awk '/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}'netstat -n | awk '/^tcp/ {++state[$NF]}; END {for(key in state) print key," ",state[key]}'netstat -n | awk '/^tcp/ {++arr[$NF]};END {for(k in arr) print k," ",arr[k]}'netstat -n |awk '/^tcp/ {print $NF}'|sort|uniq -c|sort -rnnetstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c2、查找请求80端口最多的20个IP连接netstat -anlp|grep 80|grep tcp|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -nr|head -n20netstat -ant |awk '/:80/{split($5,ip,":");++A[ip[1]]}END{for(i in A) print A,i}' |sort -rn|head -n20tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." '{print$1"."$2"."$3"."$4}' | sort | uniq -c | sort -nr |head -n 203、查找较多time_wait连接netstat -n|grep TIME_WAIT|awk '{print $5}'|sort|uniq -c|sort -rn|head -n204、找查较多的SYN连接netstat -an | grep SYN | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr | more5、根据端口列进程netstat -ntlp | grep 80 | awk '{print $7}' | cut -d/ -f16、获取Web访问前10位的'ip地址cat access.log|awk '{print $1}'|sort|uniq -c|sort -nr|head -n 10 cat access.log|awk '{counts[$(11)]+=1}; END {for(url in counts) print counts[url], url}'7、访问次数最多的文件或页面,取前20cat access.log|awk '{print $11}'|sort|uniq -c|sort -nr|head -n 208、列出传输最大的几个rar文件cat access.log|awk '{print $11}'|sort|uniq -c|sort -nr|head -n 209、列出输出大于200000byte(约200kb)的rar文件以及对应文件发生次数cat access.log |awk '($10 > 200000 && $7~/.rar/){print $7}'|sort -n|uniq -c|sort -nr|head -n 10010、如果日志最后一列记录的是页面文件传输时间,则有列出到客户端最耗时的页面cat access.log |awk '($7~/.php/){print $NF " " $1 " " $4 " " $7}'|sort -nr|head -n 100cat access.log |awk '($7~/.php/){print $NF " " $1 " " $4 " " $7}'|sort -nr|head -n 10011、列出最最耗时的页面(超过60秒的)的以及对应页面发生次数cat access.log |awk '($NF > 60 && $7~/.php/){print $7}'|sort -n|uniq -c|sort -nr|head -n 10012、列出传输时间超过 30 秒的文件cat access.log |awk '($NF > 30){print $7}'|sort -n|uniq -c|sort -nr|head -n 2013、统计网站流量(G)cat access.log |awk '{sum+=$10} END {print sum/1024/1024/1024}'14、统计404的连接awk '($9 ~/404/)' access.log | awk '{print $9,$7}' | sort15、统计http statuscat access.log |awk '{counts[$(9)]+=1}; END {for(code in counts) print code, counts[code]}'cat access.log |awk '{print $9}'|sort|uniq -c|sort -rn16、查看是哪些爬虫在抓取内容tcpdump -i eth0 -l -s 0 -w - dst port 80 | strings | grep -i user-agent | grep -i -E 'bot|crawler|slurp|spider'17、查看数据库执行的sql语句tcpdump -i eth0 -s 0 -l -w - dst port 3306 | strings | egrep -i 'SELECT|UPDATE|DELETE|INSERT|SET|COMMIT|ROLLBACK|CREAT E|DROP|ALTER|CALL'18、按域统计流量zcat squid_access.log.tar.gz| awk '{print $10,$7}' |awk 'BEGIN{FS="[ /]"}{trfc[$4]+=$1}END{for(domain in trfc){printf "%s %d ",domain,trfc[domain]}}'19、调试命令strace -p pid20、磁盘性能iostat -x 1 10【常用Linux系统Debug命令】。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Linux必学的60个命令Linux必学的60个命令Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。
所以,在Linux系统上工作离不开使用系统提供的命令。
要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。
不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。
这里笔者把比较重要和使用频率最多的命令,按照它们在系统中的作用分成下面六个部分一一介绍。
◆安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;◆文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;◆系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;◆网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、nslookup;◆系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;◆其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。
immortality按:请用ctrl+f在本页中查找某一部分的内容或某一命令的用法。
Linux必学的60个命令(1)-安装与登陆命令一:login1.作用login的作用是登录系统,它的使用权限是所有用户。
2.格式login [name][-p ][-h 主机名称]3.主要参数-p:通知login保持现在的环境参数。
-h:用来向远程登录的之间传输用户名。
如果选择用命令行模式登录Linux的话,那么看到的第一个Linux命令就是login:。
一般界面是这样的:Manddrake Linux release 9.1(Bamboo) for i586renrel 2.4.21-0.13mdk on i686 / tty1localhost login:rootpassword:上面代码中,第一行是Linux发行版本号,第二行是内核版本号和登录的虚拟控制台,我们在第三行输入登录名,按“Enter”键在Password后输入账户密码,即可登录系统。
出于安全考虑,输入账户密码时字符不会在屏幕上回显,光标也不移动。
登录后会看到下面这个界面(以超级用户为例):[root@localhost root]#last login:Tue ,Nov 18 10:00:55 on vc/1上面显示的是登录星期、月、日、时间和使用的虚拟控制台。
4.应用技巧Linux是一个真正的多用户操作系统,可以同时接受多个用户登录,还允许一个用户进行多次登录。
这是因为Linux和许多版本的Unix一样,提供了虚拟控制台的访问方式,允许用户在同一时间从控制台(系统的控制台是与系统直接相连的监视器和键盘)进行多次登录。
每个虚拟控制台可以看作是一个独立的工作站,工作台之间可以切换。
虚拟控制台的切换可以通过按下Alt键和一个功能键来实现,通常使用F1-F6 。
例如,用户登录后,按一下“Alt+F2”键,用户就可以看到上面出现的“login:”提示符,说明用户看到了第二个虚拟控制台。
然后只需按“Alt+F1”键,就可以回到第一个虚拟控制台。
一个新安装的Linux系统允许用户使用“Alt+F1”到“Alt+F6”键来访问前六个虚拟控制台。
虚拟控制台最有用的是,当一个程序出错造成系统死锁时,可以切换到其它虚拟控制台工作,关闭这个程序。
二:shutdown1.作用shutdown命令的作用是关闭计算机,它的使用权限是超级用户。
2.格式shutdown [-h][-i][-k][-m][-t]3.重要参数-t:在改变到其它运行级别之前,告诉init程序多久以后关机。
-k:并不真正关机,只是送警告信号给每位登录者。
-h:关机后关闭电源。
-c:cancel current process取消目前正在执行的关机程序。
所以这个选项当然没有时间参数,但是可以输入一个用来解释的讯息,而这信息将会送到每位使用者。
-F:在重启计算机时强迫fsck。
-time:设定关机前的时间。
-m: 将系统改为单用户模式。
-i:关机时显示系统信息。
4.命令说明shutdown命令可以安全地将系统关机。
有些用户会使用直接断掉电源的方式来关闭Linux 系统,这是十分危险的。
因为Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备(硬盘)。
在系统关机前使用shutdown命令,系统管理员会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录。
三:halt1.作用halt命令的作用是关闭系统,它的使用权限是超级用户。
2.格式halt [-n] [-w] [-d] [-f] [-i] [-p]3.主要参数说明-n:防止sync系统调用,它用在用fsck修补根分区之后,以阻止内核用老版本的超级块覆盖修补过的超级块。
-w:并不是真正的重启或关机,只是写wtmp(/var/log/wtmp)纪录。
-f:没有调用shutdown,而强制关机或重启。
-i:关机(或重启)前,关掉所有的网络接口。
-f:强迫关机,不呼叫shutdown这个指令。
-p: 当关机的时候顺便做关闭电源的动作。
-d:关闭系统,但不留下纪录。
4.命令说明halt就是调用shutdown-h。
halt执行时,杀死应用进程,执行sync(将存于buffer中的资料强制写入硬盘中)系统调用,文件系统写操作完成后就会停止内核。
若系统的运行级别为0或6,则关闭系统;否则以shutdown指令(加上-h参数)来取代。
四:reboot1.作用reboot命令的作用是重新启动计算机,它的使用权限是系统管理者。
2.格式reboot [-n] [-w] [-d] [-f] [-i]3.主要参数-n: 在重开机前不做将记忆体资料写回硬盘的动作。
-w: 并不会真的重开机,只是把记录写到/var/log/wtmp文件里。
-d: 不把记录写到/var/log/wtmp文件里(-n这个参数包含了-d)。
-i: 在重开机之前先把所有与网络相关的装置停止。
五:install1.作用install命令的作用是安装或升级软件或备份数据,它的使用权限是所有用户。
2.格式(1)install [选项]... 来源目的地(2)install [选项]... 来源... 目录(3)install -d [选项]... 目录...在前两种格式中,会将复制至或将多个文件复制至已存在的,同时设定权限模式及所有者/所属组。
在第三种格式中,会创建所有指定的目录及它们的主目录。
长选项必须用的参数在使用短选项时也是必须的。
3.主要参数--backup[=CONTROL]:为每个已存在的目的地文件进行备份。
-b:类似--backup,但不接受任何参数。
-c:(此选项不作处理)。
-d,--directory:所有参数都作为目录处理,而且会创建指定目录的所有主目录。
-D:创建前的所有主目录,然后将复制至;在第一种使用格式中有用。
-g,--group=组:自行设定所属组,而不是进程目前的所属组。
-m,--mode=模式:自行设定权限模式(像chmod),而不是rwxr-xr-x。
-o,--owner=所有者:自行设定所有者(只适用于超级用户)。
-p,--preserve-timestamps:以文件的访问/修改时间作为相应的目的地文件的时间属性。
-s,--strip:用strip命令删除symbol table,只适用于第一及第二种使用格式。
-S,--suffix=后缀:自行指定备份文件的。
-v,--verbose:处理每个文件/目录时印出名称。
--help:显示此帮助信息并离开。
--version:显示版本信息并离开。
六:mount1.作用mount命令的作用是加载文件系统,它的用权限是超级用户或/etc/fstab中允许的使用者。
2.格式mount -a [-fv] [-t vfstype] [-n] [-rw] [-F] device dir3.主要参数-h:显示辅助信息。
-v:显示信息,通常和-f用来除错。
-a:将/etc/fstab中定义的所有文件系统挂上。
-F:这个命令通常和-a一起使用,它会为每一个mount的动作产生一个行程负责执行。
在系统需要挂上大量NFS文件系统时可以加快加载的速度。
-f:通常用于除错。
它会使mount不执行实际挂上的动作,而是模拟整个挂上的过程,通常会和-v一起使用。
-t vfstype:显示被加载文件系统的类型。
-n:一般而言,mount挂上后会在/etc/mtab中写入一笔资料,在系统中没有可写入文件系统的情况下,可以用这个选项取消这个动作。
4.应用技巧在Linux和Unix系统上,所有文件都是作为一个大型树(以/为根)的一部分访问的。
要访问CD-ROM上的文件,需要将CD-ROM设备挂装在文件树中的某个挂装点。
如果发行版安装了自动挂装包,那么这个步骤可自动进行。
在Linux中,如果要使用硬盘、光驱等储存设备,就得先将它加载,当储存设备挂上了之后,就可以把它当成一个目录来访问。
挂上一个设备使用mount命令。
在使用mount这个指令时,至少要先知道下列三种信息:要加载对象的文件系统类型、要加载对象的设备名称及要将设备加载到哪个目录下。
(1)Linux可以识别的文件系统◆ Windows 95/98常用的FAT 32文件系统:vfat ;◆ Win NT/2000 的文件系统:ntfs ;◆ OS/2用的文件系统:hpfs;◆ Linux用的文件系统:ext2、ext3;◆ CD-ROM光盘用的文件系统:iso9660。
虽然vfat是指FAT 32系统,但事实上它也兼容FAT 16的文件系统类型。
(2)确定设备的名称在Linux中,设备名称通常都存在/dev里。
这些设备名称的命名都是有规则的,可以用“推理”的方式把设备名称找出来。
例如,/dev/hda1这个IDE设备,hd是Hard Disk(硬盘)的,sd是SCSI Device,fd是Floppy Device(或是FloppyDisk?)。