linux命令学习
ls 横排显示文件及文件夹名称
ls -l 显示全部信息(目录文件名称、大小、时间、权限等)
ll 是ls -l的简写
ls -Sl 按文件大小降序排列 ls -Slr按文件大小升序排列
ls |more 分页显示
ls filename*.txt 显示以filename为前缀的文件
ls -l | awk '{print substr($8,1,11)}' | sort | uniq 按文件名前11位分组显示前缀(先ls -l查看文件名在第几列 $8就是列号)
ls -rt -r反向排序,-t按更改时间排序
统计文件夹下某一类文件数——
如果文件夹内包含子目录,就用find:find
. -
type
f -name
"*.so"
|
wc
-l
如果没有子目录或不需要统计子目录,就直接用ls+通配符:ls
*.so |
wc
-l(或
ls |grep ipa |wc -l )
wc(Word Count)命令的功能为统计指定文件中的字节数、字数、行数
-c 统计字节数。
-l 统计行数。
-m 统计字符数。这个标志不能与 -c 标志一起使用。
-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。
-L 打印最长行的长度
wc
-l $(
find
. -name
"*.h"
-o -name
"*.C"
) 统计这两类文件行数
wc -l *20160317* |tail -n1统计某类文件行数(不包括换行)
ls -l 显示说明:得到一个9个字段的列表
--第1行:总用量(total) :这个数值是该目录下所有文件及目录列表第5个字段的和(以k为单位),也就是该目录的大小.请注意和该目录下的文件和子目录下文件的总合做区分
--第1字段: 文件属性字段 :总共有10个字母组成,
第一个字母表示文件类型,是减号"-",该文件是一个普通文件.
字母"d"表示该文件是一个目录.请注意,一个目录或者说一个文件夹是一个特殊文件,这个特殊文件存放的是其他文件和文件夹的相关信息.
字母是"l",表示该文件是一个符号链接.符号链接的概念类似于windows里的快捷方式.
--第一字段的后面9个字母表示文件的权限:r表是读 (Read) w表示写 (Write) x表示执行 (eXecute)
其中前三个表示文件属主的权限,中间三个表示组用户权限,最后三个表示其他用户权限.
--第2字段:文件硬链接数或目录子目录数
如果一个文件不是目录那么这一字段表示,这个文件所具有的硬链接数,即这个文件总共有多少个文件名.查看第一个文件:
如果是一个目录,则第2字段表示该目录所含子目录的个数.
cat 查看文件
cat MAOPR2015022614*.txt |grep 801727 在文件中查找801727字符串
grep e20031 *20160405* 还可输出文件名
cat MAOPR* |wc l 查某类文件个数
创建文件 touch
find 查找文件
从根目录开始查找所有扩展名为.log的文本文件,并找出包含”ERROR”的行
find / -name "*.log" | xargs grep "ERROR"
批量修改指定名称的文件后缀ipa为done
find -name "20161001*.ipa" -exec rename .ipa .done {} \;
cp 备份文件
cp 源文件 目标文件
cp -ri /temp/aa/* /temp/bb/ 复制整个文件夹
rm -rf 删除文件及目录
-r 就是向下递归,不管有多少级目录,一并删除
-f 就是直接强行删除,不作任何提示的意思
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:
nohup 后台运行程序
如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( n ohang up)。
一般都是在linux下nohup格式:
jobs 查看任务编号、状态
ctrl+z暂停任务
bg 1 (任务编号) 任务切换到后台
fg 1 任务切换到前台
tail 从指定点开始将文件写到标准输出。
tail -f filename
会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容。
rz 上传文件 (和windows接口,服务器需要装指定包)
sz 下载文件
压缩、解压
tar -cvf /tmp/etc.tar /etc <==仅打包,不压缩!
tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以 gzip 压缩 压缩(-z)和归档(-c)
tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩
tar -zxvf /tmp/etc.tar.gz 解压(gzip 方式)
tar -rvf /tmp/etc.tar /etc/aaa <==追加,注意追加操作只针对没有压缩的tar包才有效,就是zcvf的tar包无法追加
http://www.jb51.net/article/12914.htm
ps -ef|grep java 查看运行进程
kill -9 sid号 杀进程
vim 修改文本
/master 查找定位到有master的行
nn 找下一个字串
yy 复制当前行
pp 在当前行下一行粘贴
dd 删除当前行
ndd 删除以当前行开始的n行
d回车 删除2行
chown [选项]... [所有者][:[组]] 文件... 改变文件所有者和群组
chown mail:mail log2012.log
chmod [who] [+ | - | =] [mode] 文件名修改权限
u 表示“用户(user)”,即文件或目录的所有者。
g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
o 表示“其他(others)用户”。
a 表示“所有(all)用户”。它是系统默认值。
操作符号可以是:
+ 添加某个权限。
- 取消某个权限。
= 赋予给定权限并取消其他所有权限(如果有的话)。
设置mode所表示的权限可用下述字母的任意组合:
r 可读。
w 可写。
x 可执行。
chmod a+x sort.txt
chmod -R 777 * -R是目录下所有文件,777就是高权限(读、写、执行)
查看端口占用情况
netstat -anp | grep :515 查看端口
监听端口运行状态:
telnet 127.0.0.1 1521 tcp
nc -vuz 10.110.0.168 515 udp
>>>md5校验
md5sum filename >ee.txt
>>>查看僵死进程
ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]'
>>>vi中跳到文件头和文件尾
跳到文件头
:1 或 gg
跳到文件尾
:$ 或 G (大写)
>>>查看系统时间
date -R
>>>远程拷贝
scp aaa.tar.gz [email protected]:/opt/temp
>>>共享目录
服务器端/etc/exports
/opt/outlog/ 10.109.0.1(rw,sync,no_root_squash)
客户端/etc/fstab
10.109.0.1:/opt/outlog//opt/outlog/nfs defaults 0 0
然后分别使二者生效
>>>统计文件大小
du -sh 201603*
>>>查询当前用户的编码格式
echo $LANG
>>>su的注意事项
在某个用户下su,不是切换到root用户,而是获得root的权限。如果切换需要用su -。
验证方法:比如root用户是gbk编码,aaa用户是utf-8编码,在aaa下su后,查看编码格式还是utf-8。