分类: 嵌入式
2016-05-17 23:38:46
1.
su - username
//用户切换
2.
man 1 ls;
man 5
ls;
man 8 ls; //man1命令信息,man5文件信息, man8用户管理员命令信息
man 1p ls; //注意,中间那个数是ls的一个标号,表明你要查阅哪个版本的ls
man ls -a; //查阅所有类型的ls
man man; //man命令使用方法
3.
touch test.txt
//如果test.txt已存在则更新文件时间,不存在则创建文件
4.
rmdir test //只能删除空目录
5.
df //查看磁盘容量,以kb显示
df -h //以自动显示单位
6.
du test //显示文件大小
du -h test
//显示文件大小并显示单位K、M或G
7.
head file //默认显示文件头十行内容
head -n 8 file //显示文件头8行内容
head -c 8 file //显示文件前8字节内容
head -n -8 file //显示文件除最后8行的所有内容
head -c -8
file //显示文件除最后8字节以外的所有内容
8.
tail -n 8 file
//显示文件后8行内容
tail -n +8 file //从第8行开始显示文件
ping 192.168.1.1 > file &
tail -f
file //实时打印文件末尾的更新信息
9.
chmod u+x file
//文件拥有者增加可执行权限,u,g,o
chmod u=rwx file //文件权限为rwx
chmod -R
777 dir //将文件夹和文件夹中的文件属性改变
chgrp root file //将文件的组设置为root组
chown root file //将文件的用户组设置为root
chmod 1001 dir //设置SBIT位,other处的属性必须有x,只对目录有效
chmod 2010 file //设置SGID位,group处的属性必须有x,对文件和目录有效
chmod 4100 file //设置SUID位,user处的属性必须有x,只对文件有效
chmod 7000 file //设置SBIT、SGID和SUID位,由于所有组都没有设置x权限,所有设置的特殊位都没有效,且所有特殊位显示大写
chmod o+s,g+s,o+t file //同上
10.
ln file 新建链接名 //硬链接,两个文件完全相同,但硬链接不能在文件夹之间创建
ln -s file 新建链接名 //软连接,相当于建立一个快捷方式软连接可以目录创建连接
11.
chown user
file //改变文件拥有者
chown
root:aaron file //改变文件拥有者和文件所属组群
12.
find / -name
passwd > stdout 2> stderr//将错误定位到stderr文件,正确信息定向到stdout文件
find / -name passwd &> out //将所有正确信息和错误信息重定向到out文件
find / -name passwd > out &>1 //将所有正确信息和错误信息重定向到out文件
cat <
file1 > file2 //将file1中的信息拷贝到file2
13.
cat file1
file2 > file //将file1和file2中内容合并到file中
cat file.*
> file //将所有file文件内容合并到file中
14.
id root //显示用户属性
chmod g+s dir //为文件设置setgid权限,如果原文件(或文件夹)group权限可执行,则在将可执行x改成小写s;如果原文件group权限不可执行(没有x属性),则该位置设置成大写S
注:在设置了setgid权限文件夹中创建的文件中创建的新文件所属的组和该目录所属的组相同
chmod u+s dir //设置uid的文件,在文件拥有者的执行属性添加s符号,则执行该文件的所有用户可以以文件拥 有者身份执行该文件
chmod o+t dir //给文件夹其他属性添加冒险位t,添加冒险位以后,该文件中的文件只有文件拥有者、目录拥有者和超级用户可以删除
chmod 7777 test //设置set uid、set gid和sticky
注:uid只能在文件上设定,sticky只能在文件夹设定,gid文件和文件夹都可以
15.
umask 007 //将所有新创建的文件夹和文件的的属减去umask值,如新建文件的默认属性为rw-rw-rw,新建文件夹的默认属性为rwx-rwx-rwx;如果umask值为111,即所有创建文件或目录将没有可执行权限
16.
tr 'A-Z'
'a-z' < file //将file中数据输出给命令tr,使输出内容中的大写字母改成小写,并输出在屏幕上
cat > file << ! //将让系统将一次键盘上的所有输入保存到file中,当最后输入!时,结束输入
find /etc ! -type d -print //查找/etc下所有文件
find /etc -type d -print //查找/etc下所有目录,每行打印一个文件
find
/etc -type d –print0 //查找/etc下所有目录,所有文件打印到一起
17.
find /etc
-perm 0644 //查找文件属性为0644的文件
find . -perm 0644 -exec chmod 777 {} \; //表示将找到的文件属性改成777,-exec表示执行命令,{}表示找到的文件'\;'必须连在一起
18.
which ls //显示可执行文件的完整路径
whereis ls //显示可执行文件ls的完整路径,及相关配置和帮助文件路径
locate keyword
slocate keyword //两条命令相同,都是通过数据库搜索含关键字的路径和文件位置,相同是因为locate->slocate他们是软连接关系
updatedb //执行该指令可以建立系统中所有目录和文件路径的数据库,locate指令就是通过updatedb建立的数据库收索的
19.
find /etc
-user root //在etc目录下查找所有user是root的文件
find /etc -group root //查找所属组为root的文件
find /etc -size +1000k //查找大于1000k的文件
find /etc -size -1000k //查找小于1000k的文件
20.
find / -type
f //查找所有正规文件
find / -type b //查找所有块设备文件
find / -type l //查找所有链接类型文件
find / -type c //查找所有字符类型文件
21.
find /etc
-nouser
find /etc –nogroup
22.
wc file //显示文件中内容行数,如 3,3,6 表示有3行,3个字符和文件大小共6个字节
wc -m file //显示字符
wc -l file //显示行数
wc -c file //文件字节数(相当于文件大小)
grep "a" file //显示所有a字符的行
grep -n "a" file //显示有a字符的行,并列出行号
grep -v "a" file //显示除有a字符的行以外的所有行
diff file1 file2 //比较两个文件不同
uniq file //显示文件内容,相邻重复的行只显示一次
sort file | uniq //将文件内容排序,并删除重复行,再输出
cut -f3 file //显示文件的第三列内容,每一列默认以tab键隔开
cut -f2 -d, file //显示文件以逗号隔开的第二列
cut -c2-3 file //显示第2列和第3列的内容
cat file1 file2 > file //将file2中的内容垂直追加到file1后边,以行隔开并将所有内容重定向到file中
paste file1 file2 > file //将file2中内容水平追加到file1后边,以tab隔开并将所有内容定向到file中
23.
gzip file //压缩成.gz文件
gzip -d file //解压.gz文件
gunzip file //解压.gz文件
zcat file.gz //查看.gz压缩文件的内容
bzip2 file //压缩成.bz2文件
bzip2 -d file //解压.bz2文件
bzip2 file //解压.bz2文件
bzcat file.bz2 //查看.bz2压缩文件内容
tar cvf file.tar file1 file2//将file文件打包成file.tar文件,打包后占用空间增大
tar xvf file.tar //解开tar包
tar tf file.tar //列出tar包文件的内容
tar cvf file.tar file -C /home //将file文件打包,并放到home目录下
tar zcvf file.tar.gz file //将文件打包压缩
tar zxvf file.tar.gz //解压并解包
tar jcvf file.tar.bz2 file //将文件打包压缩成bz2格式
tar jxvf file.tar.bz2 //解压并解包bz2格式文件
24.
注意:ext2/3文件系统,-u表示将备份日志存储在/etc/dumpdates文件中,使用条件是备份根目录
dump -0 -f /tmp/dump1 test //将test文件备份到tmp目录下的dump1文件中
dump -0u -f /tmp/bootdump /boot //将boot根目录备份到bootdump文件中
cat /etc/dumpdates //显示dump备份日志
restore -tf /tmp/bootdump //查看bootdump备份文件中的内容-t表示查看,-f表示指定路径
restore -rf /tmp/bootdump //将bootdump文件中的内容还原到当前目录中
25.
echo ${a} //得到a变量的值,'{}'防止出错
unset a //删除a变量
set //常看当前用户环境变量和系统环境变量
env //查看系统环境变量
locale -a //查看linux支持的所有编码
LANG=C //设置ASCII环境,LANG是环境变量,这样设置可以解决中文乱码(多数情况)
LANG=en_US.UTF-8 //设置linux环境英文显示
LANG=zh_CN //设置linux中文显示,终端必须支持中文
LANG=zh_CN.UTF-8 //设置linux中文显示(部分系统打印以中文显示),终端必须支持UTF-8
ps -aux | grep svn //显示所有程序,从中列出运行的svn信息
26.
PS1='[\u@\H
\W \A \#]\$' //设置提示符变量,[root@ localhost.localdomain
/home/aaron 04:55 9]# \u用户,\H完整主机名,\W当前目录(\w完整路径),\A当前时间, \#执行的第几条命令,\$超级用户#普通用户$。
export A //将A变量转换成环境变量
histoty 10 //列出最后使用的10个指令
echo $HISTSIZE //显示history在内存中记录的最大指令数
echo $HISTFILESIZE //显示history在.bash_history文件中记录的最大指令数
!en //执行最近执行的以en开头的指令
!34 //执行当前history中记录的第34条指令
!! //执行上一条指令
!$ //截取上一条指令的最后一项,例如上一条指令是ping 127.0.0.1 = ping !$
Ctrl+R
//查找最近使用的指令
27.
alias
a='ls -al' //设置别名a,表示命令 ls
-al
unalias a //删除别名a
echo “$abcd” //双引号将除$(美元),`(ESC下边一个键),!(感叹号)以外的符号转换成字符串
echo '$abcd' //单引号将引号内所有内容转换成字符串,包括特殊字符
ls -al `pwd` //引用符(Esc键下边一个键),将先执行符号内的命令pwd,得到当前路径,再将当前路径传给ls命令。所以该命令执行结果是,列出当前目录下所有文件。
echo $[4+1] //$[],方括号内可以做运算
mkdir a\ b //创建一个中间有空格的目录a b
ls;pwd;ls -al //;将命令分开执行
ls /home && mkdir /home/test //&&逻辑与,前面一条指令执行成功才执行后面一条指令
ls /home || mkdir /home/test //||逻辑或,前面一条指令未执行成功才执行后面一条指令
28.
ls /home && echo "a" ||
echo "b" //若第一条指令执行成功则执行第二条指令;否则执行第二条 指令
ls
/hone || echo "a" && echo "b" //若第一条指令执行成功,则执行第三条指令;否则执行第二
和第三条指令
29.
sudo ls //普通用户以超级用户权限执行命令,需要在/etc/sudoers文件中添加user ALL=(ALL)
NOPASSWD:ALL
visudo //直接编辑/etc/sudoers文件。若使用vim编辑,需要先设置可写权限,编辑后再将权限设置成默认权限
su //登录超级用户,不变更到超级用户目录
su - //登录超级用户,变更到超级用户根目录
su aaron //非登录shell,只读取~/.bashrc和/etc/bashrc文件
su - aaron //登录shell,读取/etc/profile、~/.bash_profile、~/.bashrc、/etc/profile
常用快快捷键:Ctrl + d //输入已结束,shell下相当exit
Ctrl + c //退出进程
Ctrl + s 和 Ctrl + q //暂停和恢复打印输出
Ctrl + l //等于clear,清屏
31.
uname -a //显示所有系统信息
last //显示最近登录信息
free 或者 vmstat//显示内存状态
top //详细并动态显示系统状态
top -d 1 //每一秒更新一次状态
top -b -n 2 //显示两次top输出的结果
top下常用快捷键:
Ctrl + P //以cpu使用率排序
Ctrl + M //内存使用率排序
Ctrl + N //PID大小排序
Ctrl + T //CPU累积时间排序
32.
ps -ef | grep
test //查看名字中含有test的进程
ps -ef | grep -v test //查看名字中不含test的进程
kill -l //列出所有信号
kill -2 PID //SIGINT,相当于Ctrl+C
kill -15 PID //SIGTERM,请求中止进程,kill命令缺省发送
killall -9 name //结束所有名称为name的进程
man 7 signal //常看每个signal的含义
33.
nice -n -5
top & //进程启动时,将top进程的nice值设置为-5
renice 10 PID //更改一个运行中进程的nice值为10
Ctrl + z //使运行进程在后台运行,并暂停
jobs -l //列出所有后台进程信息
fg //将默认后台进程调到前台运行,默认进程有+号
bg //激活后台暂停的进程
fg
%1 //将标号为1的后台进程放到前台执行
34.
/proc/sys //可修改内核运行参数
cat /var/log/dmesg //查看系统核心启动日志
dmesg //该命令直接查看系统启动日志
tail -f /var/log/messages //查看系统最近的报错信息
cat /var/log/maillog //查看系统邮件日志
cat /var/log/secure //系统登录、安全与网络信息
/var/log/wtmp //登录记录,二进制文件,不能用cat查看
35.
who //当前在线用户
whoami //当前用户
groups aaron //查询用户所属组
id aaron //查询用户详细信息
finger aaron //查询用户详细信息
w //所有在线用户详细信息
useradd test //添加test用户
useradd -u 700 -g aaron -G tom zl //创建一个新用户,其uid为700,有效群组为aaron,其它群主为tom
passwd test //为test用户添加密码
usermod -c "haha" aaron //将aaron用户账户信息名称改为haha
finger aaron //查看已更改名称等详细信息修改test用户家目录为test1:
usermod -d "/home/test1" test //在用户信息中将test用户家目录地址改为/home/test1
mkdir /home/test1 //建立家目录
chmod 700 /home/test1 //修改家目录权限
chown test.test /home/test1 //修改家目录所属用户为test
cd ~test //进入test用户家目录
36.
usermod -e
"2016-09-01" root //设置root用户的密码过期时间,过期之后将无法再登录
usermod -G root aaron //将aaron加入到root组,可用id aaron查看所属组
usermod -g 504 aaron //将aaron的gid改成504
usermod -s /bin/csh aaron //将arron用户的默认shell改为/bin/csh
usermod -u 506 aaron //将aaron的uid改成506
exit //退出当前用户返回上一个用户
usermod -p 1234 aaron //将加密后的密码改为1234,及/etc/shadow的密码为1234,使用之后将无法登录用户,1234解码为未知
usermod -L aaron //锁住aaron用户,使之无法登陆
usermod -U aaron //解锁aaron用户
passwd -S aaron //查看aaron用户密码是否被锁住
37.
userdel aaron
//删除用户,不删除家目录的信息
userdel -r aaron //完全删除用户所有信息
38.
wc -l
/etc/passwd //查看文件行数
cat /etc/passwd | wc -l //查看文件行数
39.
cat
/etc/login.defs //显示创建用户的配置文件
ll -a /etc/skel //家目录中创建的所有文件都来自于/etc/skel文件
40.
vim
/etc/shadow //将用户第二栏的加密密码删除可以删掉用户密码,使用用户可以无密码登录
authconfig --enablemd5 --update //设置用户密码为MD5加密,--disablemd5表示不MD5加密
authconfig --enableshadow --update //允许用户密码保存在/etc/shadow文件中,--disablesh.adow表示用户密码保存在/etc/passwd中
41.
groupadd book
//添加一个book群组
groupdel book //删除book群组
cat /etc/group //查看所有群组信息
groupmod -n tom jack //把名称为jack的群组名字改为tom
gpasswd tom //给群组tom添加密码,一般不给群组添加密码
cat /etc/gshadow //查看群主密码信息
gpasswd -a jack tom //把jack加入tom群组中
groups jack //查看jack用户所属的群组
newgrp aaron //使当前登录用户的有效群主为aaron,即该用户创建的文件默认群组为aaron
useradd -M aaron //创建aaron用户,不创建家目录
useradd aaron -d /aaron //创建用户,并指定根目录位置
useradd -r aaron //创建一个系统账户,uid小于500
42.
/dev/hd[a-t]
//IDE设备
/dev/sd[a-z] //SCSI设备
/dev/fd[0-7] //标准软盘
/dev/md[0-31] //软raid设备
loop[0-15] //本地回访设备
ram[0-19] //内存
43.
/dev/null //无线字符设备
/dev/zero //无线零资源
/dev/tty[0-31] //虚拟终端,在虚拟机中按Ctrl + Alt + F2,进入tty2
echo 123 > /dev/tty2 //在tty2虚拟终端中输出123打印
/dev/ttyS[0-9] //串口
/dev/lp[0-3] //并口
44.
df -aTh //显所有文件系统,包括虚拟文件系统
df -h /etc //显示etc目录下磁盘的使用情况
df -ih //列出所有磁盘节点使用情况
du //列出当前目录中所有目录的占有空间,以k为单位
du -s /* //显示根目录下得所有目录占用的容量
cp -a dir1 dir2 //复制文件到新的目录,并保持原来的属性
ln -sf f1 f2 //若f2存在强制删除f2,建立新的f2软连接
fdisk /dev/sda //显示磁盘参数,必须root用户才能执行,且sda不带数字
45.
partprobe //读取新的磁盘分割表信息,分盘之后使用
46.
dmesg | grep
-n --color=auto 'eth' //grep列出内核eth信息,包括颜色和行号
dmesg | grep -n -A3 -B2 --color=auto 'eth' //将关键词所在的前三行和后两行都列出来
//注:使用通配符[:lower:]等可以避免不同语言编码顺序不同,造成的数据截取结果的差异
ifconfig br-lan | grep -ioE "Bcast:[0-9.]+" | awk -F: '{print $2}' //-E表示使用表达式匹配;-i表示忽略大小写;-o表示只显示刚好匹配的部分,而不是显示匹配的那一行;'.'匹配一个非换行符的字符;'+'表示重复一次或多次
grep -n 'the' regular_express.txt //搜寻文本中字符串,并打印出行数
grep -vn 'the' regular_express.txt //搜寻除关键字以外的行
grep -in 'the' regular_express.txt //搜寻关键字,大小写都匹配
grep -n 't[ae]st' regular_express.txt //关键字'a'和'e'都匹配
grep -n '[^g]oo' regular_express.txt //'oo'前边有'g'不匹配
grep -n '[^a-z]oo' regular_express.txt //'oo'前边不能有小写字母
grep -n '[0-9]' regular_express.txt //列出所有包含数字的行
grep -n '[a-zA-Z0-9]' regular_express.txt //列出包含数字、字母的行
grep -n '[^[:lower:]]oo' regular_express.txt //使用通配符[:lower:](表示小写字母),即列出'OO'前边没有小写字母的行
grep -n '^the' regular_express.txt //列出所有行首为'the'的行
grep -n '^[a-z]' regular_express.txt //列出所有行首为小写字母的行
grep -n '^[^[:alpha:]]' regular_express.txt //开头字母不是英文字母
grep -n '^[^a-zA-Z]' regular_express.txt //同上
grep -n '\.$' regular_express.txt //打印结尾为小数点的行,应为linux下每一行结尾为'$'
cat -An regular_express.txt | head -n 10 | tail -n 6 //显示文本前10行的倒数6行
grep -n '^$' regular_express.txt //找出空白行
grep -v '^$' /etc/profile | grep -v '^#' //找出文本所有除空白和注释的行
grep -n 'goo*g' regular_express.txt //找出字符串中首尾是'g',且中间至少有一个'o'的行
grep -n 'g.*g' regular_express.txt //找出首尾为'g',中间为任意字符串的行
grep -n 'o\{2\}' regular_express.txt //找到有两个连续'OO'字符串的行
grep -n 'go\{2,5\}g' regular_express.txt //找到g后边接2-5个'o',并以'g'结尾的字符串
grep -n 'go\{2,\}g' regular_express.txt //找到g后边接2个以上的'o',并以'g'结尾的字符串
grep -n \' regular_express.txt //收索含有单引号的行
ls /etc/????? //列出文件名有5个文件或文件夹下的文件
ll -d [^c]* //列出文件名开头不是'c'的文件夹
cat > test //捕捉键盘输入到test文件中
cat > test1 << "ha" //输入文本到test1,输入"ha"时表示结束
echo $PATH | cut -d ':' -f 5 //以':'为分隔符,截取第5段内容
echo $PATH | cut -d ':' -f 3,5 //截取3段和第5段的内容
export | cut -c 12- //获得所有行的前12个字符后的字符
export | cut -c 12-15 //获得所有行的12到15之间的字符
df -h | cut -d ' ' -f 1 //当数据内容是以多个空格隔开时,只能截取到第一行数据
cat /etc/passwd | sort -t ':' -k 3 -n //以':'分割的第三栏,用数字大小排序
last | cut -d ' ' -f 1 | sort | uniq -c //列出最近登录的账号的第一栏排序,并去掉重复,记录重复次数
last | tr '[a-z]' '[A-Z]' //将所有输出信息由小写替换为大写
cat /etc/passwd | tr -d ':' //删除所有':'字符
//注:就算将cat -A 打印的$号删掉,保存在文件中时也会在每行结尾增加一个$号,删掉一些特殊字符时,不能先用cat -A打印出来再处理;而应该先cat,使用'\r'转意符号处理,再cat -A
cat test | tr -d '\r' > test1 //将test中的^M在输出中删掉,并保存在test1中
cat file | tr "abc" "xyz" > new_file //将字符中a替换成x,b替换成y,c替换成z
cat /etc/man.config | col -x | cat -A //将'\t'符删除
cat /etc/man.config | tr -d '\t' | cat -A //同上
47.
nl /etc/passwd | sed '2,5d' //删除打印的第二到第5行
nl /etc/passwd | sed '2a lee' //在第二行后边一行加入lee
nl /etc/passwd | sed '2i lee' //在第二行前边一行加入lee
nl /etc/passwd | sed '2,5c lee' //把第二行和第五行替换成lee
nl /etc/passwd | sed -n '2,5p' //提取第二和第5行
cat aria2_tmp2 | sed 's/^.*json//g' //删除从开始到json前的所有数据
cat aria2_tmp2 | sed 's/\]}$//g' //删除结尾的]}字符
cat /etc/man.config | grep 'MAN' | sed 's/#.*$//g' | sed 's/^$/d' //删掉空白行和注释
sed -i 's/^{/\"{/g' aria2_tmp2 //改变文件内容,将文件开头的花括号替换成“{
sed
-i '$a #lee' aria2_tmp2 //文件最后一行插入#lee
sed -i "/${haha}/d" test //删除文件中一行,其中haha是变量
48.
mount --bind
/home /mnt/home //将home目录挂载到/mnt/home下边
umount /mnt/usb //卸载挂载点,卸载不掉的原因可能是cd到了挂载目录,退出挂载目录,再卸载即可
49.
tail -f error.log //实时打印日志信息
50.
df -h | egrep '/|tmp' //使用管线|表示或的意思,即包含字符/和字符tmp的行
df -h | grep -E '/|tmp' //grep -E等价于egrep
printf '%s\t%s\t%s\t%s\t%s\t\n' $(cat printf.txt) //所有文字以[tab]分割打印
printf '%10s %5i %5i %5i %8.2f \n' $(cat printf.txt | grep -v Name) //字符、整数、小数格式化打印
printf '\x45\n' //打印asicII码字符
printf "%-1s %-2s %-4.2f\n" NO Name 11.111 //格式化打印,类似C语言
printf "%-18s%s\\\n" ${ip} ${name} //printf格式化输出字符串;%-ns表示左对齐n个空格;输出字符串"\n"要输"\\\n",不知为何,echo只需要"\\n"
注:printf就类似C语言中的打印,只是后面的参数以空格隔开
51.
mount | awk '{print $3}' //打印mount的第三列,默认数据由空格或[tab]隔开
mount | awk '{print $1 "\t lines: " NR "\t columes: " NF}' //打印第一列变量,NR表示打印的第几行,NF表示该行有多少个由空格或[tab]隔开的字段
cat /etc/passwd |awk -F ':' '{print $1}' //以':'为分隔号打印出文本第一列
52.
nslookup //获取域名的ip地址
53.
netstat -tunlp | grep 53 //查看dnsmasq是否启动
54.
eval "echo $PATH" //eval执行字符串中的命令
55.
${#name} //给出name的长度
${name%word} //从name的尾部开始删除与word匹配的最小部分,然后返回剩余部分
${name%%word} //从name的尾部开始删除与word匹配的最长部分,然后返回剩余部分
${name#word} //从name的头部开始删除与word匹配的最小部分,然后返回剩余部分
${name##word} //从name的头部开始删除与word匹配的最长部分,然后返回剩余部分
${host:0:2} //从0+1的位置开始,从左到右截取2个字符,并以字符串形式返回
56.
ping -i 2 //指定两秒ping一次百度
ping -R 192.168.13.1 //使用ipRR记录追踪经过的ip地址,是往返的出站地址,最多9条。windows dos命令下使用 ping -r 192.168.1.1
traceroute 192.168.1.1 //使用udp追踪,到目的ip所经过的每个站的目的ip地址,不含返回的
traceroute 192.168.1.1 -I //使用echo,效果貌似比udp好
traceroute 192.168.1.1 -T //使用tcp追踪, 效果貌似比udp要好
traceroute -q 4 192.168.1.1 //每个网关发4个报文
traceroute -m 10 192.168.1.1 //设置最大跳数为10,即最多到达10个网关
traceroute -n 192.168.1.1 //只显示主机的ip地址,不显示主机名,明显快很多,少了dns反向解析
traceroute -p 60000 192.168.1.1 //指定发送的报文端口从60000开始
traceroute -r 192.168.1.1 //绕过路由表,直接到达目标网络,主要用来测试本地主机是否可达
traceroute -w 3 192.168.1.1 //对探测包的响应时间设置成3秒
57.
tcpdump icmp -en -ttt //-ttt显示两条报文时间差
tcpdump icmp -en -ttttt //-ttttt显示后边所有报文与第一条报文的时间差
tcpdump -en icmp or udp //同时打印icmp和udp报文
58.
netstat -rn //显示路由表,-n主机名由ip显示
route -n //显示路由表,同上
route add -net 192.168.110.0 netmask 255.255.255.0 dev eth0 //添加到网络192.168.110.0的路由,指向接口eth0上
route del -net 192.168.110.0 netmask 255.255.255.0 //删除目的网络为192.168.110.0路由,注意同时要指明netmask,要与添加时的参数匹配
route add -host 192.168.110.2 dev eth0 //添加目的主机为192.168.110.2的路由
route del -host 192.168.110.2 //删除主机为192.168.110.2的路由
route add -host 192.168.110.2 dev eth0 reject //添加拒绝出口的路由
route del -host 192.168.110.2 reject //删除拒绝出口的路由
route add default gw 192.168.100.1 //添加默认网关
route del default gw 192.168.100.1 //删除默认网关
59.
cat /proc/stat | grep 'cpu ' | awk '{print $2" "$3" "$4" "$5" "$6" "$7" "$8}' //获取cpu使用情况
cat /proc/stat | grep 'cpu ' | awk '{print $2+$3+$4+$5+$6+$7+$8}' //将cpu使用总量加起来
60.
ulimit -c -n -s //查看打开文件的软限制
ulimit -c -n -s -H //查看打开文件的软限制,硬限制是软限制的上限
ulimit -c unlimited //core文件的大小不受限制
61.
find ./ -type f -name "*\.[od]" | grep -v filename | xargs rm -f //删除找到的除filename之外的所有文件
62.
LD_LIBRARY_PATH=./ ./test //执行test时,将环境变量LD_LIBRARY_PATH加入到程序
export LD_LIBRARY_PATH=/home/test //直接添加全局环境变量LD_LIBRARY_PATH
63.
size a.out //查看可执行文件中的text(只读部分)、data(已初始化数据)、bss(未初始化数据)段。dec和hex表示这3段数据值之和。
//只有text和data会存入可执行文件中,bss在程序运行后加载到内存初始化为0
64.
chattr +i file //增加文件隐藏属性为不能删除,修改
chattr -i file //删除文件隐藏属性
lsattr file //显示文件隐藏属性
65.
pstree -u //查看系统进程树,并显示uid
ps -l //显示当前终端有关的bash
66.
grep "wxRE_ADVANCED" . -r -n --color=auto//搜索文件内容
67.
g++ -dM -E main.cpp //打印所有预处理宏
68.
zip -r file.zip myfile //将myfile目录中的文件压缩成file.zip
unzip file.zip //将file.zip中的文件解压
69.
linux挂在win10共享文件夹
mount -t cifs //192.168.10.101/share /mnt/win10/