linux常用命令有哪些

时间:2018-10-30

查看文件内容 

cat file1从第一个字节开始正向查看文件的内容 
tac file1从最后一行开始反向查看一个文件的内容 
more file1查看一个长文件的内容 
less file1类似于'more'命令,但是它允许在文件中和正向操作一样的反向操作 
head -2 file1查看一个文件的前两行 
tail -2 file1查看一个文件的最后两行 
tail -f / var / log / messages实时查看被添加到一个文件中的内容 

文本处理 

cat file1 file2 ... | 命令<> file1_in.txt_or_file1_out.txt使用PIPE,STDIN和STDOUT
cat file1 进行文本操作的一般语法  命令(sed,grep,awk,grep等等)> result.txt合并一个文件的详细说明文本,并将简介写入一个新文件中 
cat file1 | 命令(sed,grep,awk,grep等等)>> result.txt合并一个文件的详细说明文本,并将简介写入一个已有的文件中期 
grep Aug / var / log / messages在文件'/ var / log / messages'中查找关键词“Aug” 
grep ^ Aug / var / log / messages在文件'/ var / log / messages'中查找以“Aug “开始的词汇 
grep [0-9] / var / log / messages选择'/ var / log / messages'文件中所有包含数字的行 
grep Aug -R / var / log / *在目录'/ var / log'及随后的目录中搜索字符串“月” 
SED的/ stringa1 / stringa2 / g'example.txt将example.txt中文件中的‘字符串1’替换成‘字符串2’ 
的sed' 
sed的'/ *#/ d;/ ^ $ / d'example.txt从example.txt文件中删除所有注释和空白行 
echo'esempio'| tr'[:lower:]''[:upper:]'合并上下单元格内容 
sed -e'1d'come.txt从文件example.txt中排除第一行 
sed -n'/ stringa1 / p'查看只只包含词汇“string1”的行 
sed -e's / * $ //'example.txt删除每一行最后的空白 
字符sed -e's / stringa1 // g'example.txt从文档中只删除词汇“string1”并保留剩余全部 
sed -n'1,5p; 5q'example.txt查看从第一行到第5行内容
sed -n'5p; 5q'example.txt  查看第5行 
的sed -e的/ 00 * / 0 /
g'example.txt单个用替换多个零  猫-n文件1标示文件的行数 
猫example.txt文件| awk'NR%2 == 1'删除example.txt文件中的所有偶数行 
echo abc | awk'{print $ 1}' 
查看一行第一栏echo abc | awk'{print $ 1,$ 3}' 

paste -d'+'file1 file2合并两个文件或两栏的内容,中间用“+”区分 
sort file1 file2排序两个文件的内容 
sort file1 file2 | uniq取出两个文件的并集(重复的行只保留一份) 
sort file1 file2 | uniq -u删除交集,留下其他的行 
sort file1 file2 | uniq -d取出两个文件的交集(只留下同时存在于两个文件中的文件) 
comm -1 file1 file2比较两个文件的内容只删除'file1'所包含的内容 
comm -2 file1 file2比较两个文件的内容只删除'file2'所包含的内容 
comm -3 file1 file2比较两个文件的内容只删除两个文件共有的部分 

字符设置和文件格式转换 

dos2unix filedos.txt fileunix.txt将一个文本文件的格式从MSDOS转换成UNIX 
unix2dos fileunix.txt filedos.txt将一个文本文件的格式从UNIX转换成MSDOS 
recode ..HTML page.html将一个文本文件转换成html 
recode -l | 更多显示所有允许的转换格式 

文件系统分析 

badblocks -v的/ dev / hda1的检查磁盘hda1的上的坏磁块 
的fsck的/ dev / hda1的修复/检查hda1的磁盘上的Linux文件系统的完整性fsck.ext2
的/ dev / hda1的修复  /检查hda1的磁盘上的ext2文件系统的完整性 
的的e2fsck的的/ dev / hda1上的修复/检查hda1上的磁盘上的EXT2文件系统的完整性 
的e2fsck的-j的的/ dev / hda1上的修复/检查hda1上的磁盘上的ext3的文件系统的完整性 
fsck.ext3的的/ dev / hda1上的修复/检查hda1上的磁盘上的ext3文件系统的完整性 
fsck.vfat的/ dev / hda1的修复/检查hda1的磁盘上脂肪文件系统的完整性 
fsck.msdos的/ dev / hda1的修复/检查hda1的磁盘上dos文件系统的完整性 
dosfsck / dev / hda1修复/检查hda1的磁盘上DOS文件系统的完整性 

初始化一个文件系统 

的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_地址:/家庭/公/家庭/本地通过SSH压缩状语从句:将一个远程目录
同步到本地目录  的rsync -az -e的ssh --delete /家庭/本地的ip_addr:/家庭/公共通过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用户@ ip_addr'cd /家庭/备份家庭&&焦油X -p“通过SSH在远程目录中复制一个本地目录 
焦油比照- 。| (cd / tmp / backup; tar xf - )本地将一个目录复制到另一个地方,保留原始权限及链接 
查找/ home / user1 -name'* .txt'| xargs cp -av --target-directory = / home / backup / --parents从一个目录查找并复制所有以'.txt'结尾的文件到另一个目录 
查找/ var / log -name'* .log'| tar cv --files-from = - | bzip2> log.tar.bz2查找所有以'.log' 


光盘 

cdrecord -v gracetime = 2 dev = / dev / cdrom -eject blank = fast -force清空一个可复写的光盘内容 
mkisofs / dev / cdrom> cd.iso在磁盘上创建一个光盘的iso镜像文件 
mkisofs / dev / cdrom | 的gzip> cd_iso.gz在磁盘上创建一个压缩了的光盘异镜像文件
的mkisofs -J -ALLOW  -leading-点-R -V“标签CD” -异级别4 -o ./cd.iso data_cd创建一个目录的iso镜像文件 
cdrecord -v dev = / dev / cdrom cd.iso刻录一个ISO镜像文件 
gzip -dc cd_iso.gz | cdrecord dev = / dev / cdrom - 刻录一个压缩了的ISO镜像文件 
mount -o loop cd.iso / mnt / iso挂载一个ISO镜像文件 
cd-paranoia -B从一个CD光盘转录音轨到wav文件中 
cd -paranoia - “-3”从一个CD光盘转录音轨到wav文件中(参数-3) 
cdrecord --scanbus扫描总线以识别scsi通道 
dd if = / dev / hdc | 的md5sum校验一个设备的的md5sum编码,例如一张CD 

网络 - (以太网和WIFI无线) 

使用ifconfig eth0的显示一个以太网卡的配置
ifup eth0的时候启用  一个'eth0'网络设备网络设备 
ifdown你为eth0禁用一个'eth0'网络设备网络设备 
使用ifconfig eth0的192.168.1.1子网掩码255.255.255.0控制IP地址 
使用ifconfig eth0的PROMISC设置'eth0的'成混杂模式以嗅探数据包(嗅探) 
dhclient eth0以及dhcp模式启用eth0'route
-n show routing table 
route add -net 0/0 gw IP_Gateway configura default gateway 
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 configure静态路由到达网络'192.168.0.0/16'route 
del 0/0 gw IP_gateway删除静态路由 
echo“1”> / proc / sys / net / ipv4 / ip_forward激活ip routing 
hostname show hostname of system 
host www.example.com查找主机名将名称解析为ip地址,反之亦然(1)
NSLOOKUP www.example.com查找主机来解析域名到IP地址及镜像(2) 
所有接口的IP链路秀节目链路状态 
的“eth0的”MII-eth0的工具显示连接状态 
的ethtool eth0的显示网卡的统计数据“为eth0” 
的netstat -tup显示所有活动网络连接及其PID 
netstat -tupl显示在系统上侦听的所有网络服务及其PID 
tcpdump tcp端口80显示所有HTTP流量 
iwlist扫描显示无线网络 
iwconfig eth1显示配置无线网卡 
主机名显示主机名 
主机www.example.com查找主机名以将名称解析为IP地址,反之亦然 
nslookup www.example.com查找主机名以解析名称到IP地址,反之亦然 
www.isample.com查找Whois数据库 

JPS工具

jps(Java虚拟机进程状态工具)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux / unix平台上简单察看当前java进程的一些简单情况。

我想很多人都是用过UNIX系统里的PS命令,这个命令主要是用来显示当前系统的进程情况,有哪些进程,及其id.jps也是一样,它的作用是显示当前系统的java的进程情况,及其ID号。我们可以通过它来查看我们到底启动了几个java的的进程(因为每一个的的java程序都会独占一个的的java虚拟机实例),和他们的进程号(为下面几个程序做准备),并可通过选择来查看这些进程的详细启动参数。

使用方法:在当前命令行下打JPS(需要JAVA_HOME,没有的话,到改程序的目录下打)。

JPS存放在JAVA_HOME /斌/ JPS,使用时为了方便请将JAVA_HOME /斌/加入到路径。

$> jps
23991 Jps
23789 BossMain
23651 Resin

比较常用的参数:

-q只显示pid,不显示类名称,jar文件名和传递给主方法的参数
$> jps -q
28680
23789
23651

-m输出传递给主方法的参数,在嵌入式JVM上可能是空

$> jps -m
28715 Jps -m
23789 BossMain
23651 Resin -socketwait 32768 -stdout /data/aoxj/resin/log/stdout.log -stderr /data/aoxj/resin/log/stderr.log

-l输出应用程序main class的完整包名或者应用程序的jar文件完整路径名

$> jps -l
28729 sun.tools.jps.Jps
23789 com.asiainfo.aimc.bossbi.BossMain
23651 com.caucho.server.resin.Resin

-v输出传递给JVM的参数

$> jps -v
23789 BossMain
28802 Jps -Denv.class.path = / data / aoxj / bossbi / twsecurity / java / trustwork140.jar:/ data / aoxj / bossbi / twsecurity / java /:/ data / aoxj / bossbi / twsecurity / JAVA / twcmcc.jar:/data/aoxj/jdk15/lib/rt.jar:/数据/ aoxj / JD

k15 / lib / tools.jar -Dapplication.home = / data / aoxj / jdk15 -Xms8m
23651 Resin -Xss1m -Dresin.home = / data / aoxj / resin -Dserver.root = / data / aoxj / resin -Djava.util .logging.manager = com.caucho.log.LogManagerImpl -

Djavax.management.builder.initial = com.caucho.jmx.MBeanServerBuilderImpl

sudo jps看到的进程数量最全

jps 192.168.0.77

列出远程服务器192.168.0.77机器所有的JVM实例,采用RMI协议,默认连接端口为1099

(前提是远程服务器提供jstatd服务)