liunx速记
作者:互联网
liunx 一切皆文件(python一切皆对象)
查看某一个ip地址是否能够连通:
ping ip
查看某一个机器上的某一个端口是否可以访问
1、telnet ip port (window自带,liunx需要安装)
2、liunx独有的:
1、ssh -v -p portusername@ip (eg:ssh -v -p 80 mlp@www.baidu.com(username可以随意写)或 ssh -v www.baidu.com -p 80)
2、wget ip:port
查看当前进程快照:
ps aux(查看进程的cpu占用和内存占用)
ps -ef (查看进程的父进程id和完整地command命令)
USER:启动该进程的用户账号名称
PID:该进程的ID号,在当前系统中是唯一地
%CPU:CPU占用的百分比
%MEM:内存占用的百分比
VSZ:占用虚拟内存(swap空间)的大小
RSS:占用常驻内存(物理内存)的大小
TTY:该进程在哪个终端上运行。“?”表未知或不需要终端
STAT:显示了进程当前的状态,如S(休眠)、R(运行)、Z(僵死)、<(高优先级)、N(低优先级)、s(父进程)、+(前台进程)。对处于僵死状态的进程应予以手动终止。
START:启动该进程的时间
TIME:该进程占用CPU时间
COMMAND:启动该进程的命令的名称
动态查看进程:
top (top -d 1 一秒钟刷新一次数据)
结束进程:
kill -9 pid 强制杀死进程(杀死进程,对应的端口也就关闭了)
liunx查看端口占用:
1、lsof -i :端口号
2、netstat -tunlp | grep 端口号( 或 netstat -anp | grep 端口号)
Windows cmd:netstat -ano|findstr "5037" 查看5037这个端口有没有占用
-a显示所有活动的TCP连接,以及正在监听的TCP和UDP端口
-t (tcp) 仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 以数字形式表示地址和端口号,拒绝显示别名,能显示数字的全部转化为数字
-l 仅列出在Listen(监听)的服务状态
-p 显示建立相关链接的程序名(权限问题,如果在普通用户登录的shell里面执行netstat命令,那么只能列出拥有该普通用户权限的相关进程,如果想要看到所有的端口情况,最好还是切到root用户进行操作。)
查看日志文件内容的命令:
cat、tac(是否显示全,决定于屏幕大小):
1、cat -n file (在屏幕直接显示file的内容,-n :显示时,连行号一起输出)
cat 查看一个文件,没有翻页功能,并不常用,原因是当文件大,行数比较多时,屏幕无法全部容下时,只能看到一部分内容。
cat 由第一行开始显示内容,并将所有内容输出
2、cat a.txt b.txt > c.txt (合并保存到一个文件中)
tac 从最后一行倒序显示内容,并将所有内容输出
more和less(常用)分屏查看 (根据窗口大小调整)有翻页功能
more/less file
more 根据窗口大小,一页一页的显示文件内容,从前往后翻,按回车键,下一行,按空格,下一页,退出按q
less 和more类似,从后往前显示文件内容,但其优点可以往前翻页,而且进行可以搜索字符,输入/xx回车,搜索到xx就高亮显示,按q退出
head、tail(默认是10行内容)
head 只显示头几行 head -n 3 file
tail 只显示最后几行 tail -n 3 file,
tail -f 动态查看最后10行的内容
-f :动态读取
tail -3f file 动态查看最后3行的内容
tail -3 file 查看最后3行的内容
sed
查找文件:find (find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。)
find命令用于文件查找
语法格式:find [路径] [匹配表达式]
find命令的匹配表达式主要有以下几种类型。(可以用正则)
-name filename:查找指定名称的文件。
-user username:查找属于指定用户的文件。
-group grpname:查找属于指定组的文件。
-size size:查找指定大小的文件,+size大于多少 -size小于多少
-ctime 天数 :文件最后修改时间为指定天数之前,负数表示之后
-atime 天数 :文件最后访问时间为指定天数之前,负数表示之后
-amin n : 在过去 n分钟内被读取过的文件
-cmin n : 在过去 n 分钟内被修改过
-type : 文件类型是:
d: 目录
f: 一般文件
搜索文件中匹配符:grep (grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。)
grep命令用于查找文件中包含有指定字符串的行
格式1:命令1 | grep 关键字
格式2:grep 关键字 文件名
grep [可选项] 要查找的字符串 文件名
常用可选项有:
-v:列出不匹配的行。
-c:对匹配的行计数。
-l:只显示包含匹配模式的文件名。
-n:每个匹配行只按照相对的行号显示。
-i:对匹配模式不区分大小写。
|管道符
命令1 |命令2 (命令1 执行后的所有内容,通过管道符传递给命令2使用)
文件的移动、重命名:
mv 移动 、重命名
1、mv 文件名 目录 (移动文件到指定目录)
2、mv 文件名1 文件名2 (改名 将文件名1修改成文件名2)
文件的创建:
touch 文件名
文件的删除:
rm -rf 文件 或目录 (删目录需要加 -r 参数)
-r:删除目录及子目录,目录下如果有子目录及文件也会被删除(递归删除)
-f : 不询问直接删除
文件的复制:
cp 复制指定文件到另一文件或目录
cp 【参数】 【source】 【dest】
参数:-b :如果目的文件存在,就创建一个备份
-r:若源中有子目录,则将子目录下得文件及目录亦全部复制目的目录
-f:若目的地有重复的文件,则覆盖原有文件
cp -rf a.txt /tmp
mkdir,rmdir文件夹的创建,以及空文件夹的删除
mkdir test
rmdir test (rmdir只能删除空文件夹,rm删除文件)
du 文件和目录的磁盘使用空间
lsof (list open files) 是一个列出当前系统打开文件的工具,系统监视工具(liunx一切皆文件) (root权限才能使用)
lsof 【options】 filename
lsof filename 显示打开指定文件的所有进程
lsof -i 列出所有的网络连接,可以看见端口
lsof -i tcp 列出所有tcp 网络连接信息
lsof -i :3306 列出谁在使用某个端口
lsof -i udp:55 列出谁在使用某个特定的udp端口
wc 统计指定文件中的行数,字节数,字数,并将统计结果显示输出
wc 文件 显示文件中的行数,字节数,字数
-l 统计行数 只显示行数
修改文件权限 chmod:
查看文件权限:ls -l 或者 ll file
[root@localhost Desktop]# ll
total 512
drwxr-xr-x. 2 root root 4096 May 28 01:40 aa
-rw-r--r--. 1 root root 2381 Jun 16 22:44 index.html
-rw-r--r--. 1 root root 2381 Jun 16 22:56 index.html.1
-rwxrw-rw-. 1 root root 667 May 28 00:03 username.txt
total 512 代表当前目录下文件大小的总和是512k。
文件类型, ' - ' 代表是普通文件, ' d ' 代表是文件夹,'l'代表连接文件,"b"代表设备
权限:9个字符每3个为一组,分别代表文件所有者、文件所有者所在用户组(所属组)、其他人对文件拥有的权限 ,r代表读取权限 --4,w执行权限 --2, x代表执行权限 --1
紧接着的数字2代表"aa"这个目录下的目录文件数目
用户和组信息
文件大小(byte)
文件修改时间
文件/文件夹名
修改文件的读写执行权限:
1、数字方式(r = 4,w=2,x=1)
chmod 777 文件名 (赋予所有者,所有者所属组,其他用户对文件可读、可写、可执行的权限)
2、文本方式(u(user),g(group),o(other),a(all),+增加权限,-去掉权限,-R递归,把这个目录下所有的文件、文件夹赋权限)
chmod g+rw abc 为文件abc的组拥有者增加rw权限
chmod u-x abc 为文件abc的用户拥有者去除x权限
chmod o=rw- abc 指定文件abc的其他用户权限为rw-
chmod -R a+x abc 为文件abc及其目录底下的所有文件的全体用户增加x权限
chgrp (改变文件所属组 change group):
用法: chgrp 【选项】 【组】 【文件】
主要参数:
-R:递归
注意:使用权限是超级用户
eg:chgrp -R user smb.conf
chown ( 转变文件拥有者 change owner ):
用法:1、chown -R -h 用户名 文件/目录
2、chown 用户名:用户组 文件/目录
主要参数:-R 递归式地改变指定目录及其所有子目录、文件的文件主
-h 选项意味着在改变符号链接文件的属主时不影响该链接所指向的目标文件.
注意:使用权限是超级用户
chown -R root /etc/config.cfg
chown -R root:root /home
cd :改变当前的目录或者处理绝对目录和相对目录
cd回车:切换到当前用户个人目录
cd /:切换到根目录
cd ../xx:切换上级目录的xx目录
cd .:停留在当前目录
cd - :回到上一次操作的目录
cd ~:回到用户家目录
/root:root用户的个人文件夹(家目录) #代表root用户
/home:其他用户的家目录 $ 代表普通用户
切换用户:
su
su root (读取变量的方式是non-login shell,这样的方式下非常多的变量都不会改变。尤其是PATH。所以root用的非常多的命令都仅仅能用绝对路径来运行。这样的方式仅仅是切换到root的身份。)
su - root (会重新加载用户的用户变量,是真正的root)
获取超级用户权限
eg:sudo reboot
有一些命令是普通用户没有权限操作的,所以要用sudo来获取超级用户权限
如果普通用户要使用sudo命令,需要在/etc/sudoers文件中配置才可以使用。
pwd:显示当前路径
归档压缩命令:
gzip/gunzip(.gz)
eg: gzip -r test.txt 压缩test.txt 为test.gz (如果压缩的是一个目录,则使用gzip命令,会将该目录及其子目录下的文件进行.gz压缩,不是目录整体.gz压缩,若想整体压缩,使用tar或zip命令)
gunzip test.txt.gz 减压
zip/unzip ( .zip )
eg:zip的压缩必须交代清楚压缩后的压缩文件名
zip -r /opt/etc.zip /etc # 把/etc下所有文件和文件夹压缩到 /opt目录下的etc.zip (-r:递归压缩)
zip -r /opt/var.zip /var -x "*.log" #把 /var下所有的文件和文件夹除了以.log结尾的都压缩到/opt目录的var.zip中 (-x 反选)
unzip /opt/etc.zip -d /etc #把 /opt/etc.zip解压到/etc 目录下 (-d 目录名:把压缩文件解压到指定目录下)
tar文件打包:
tar zcvf test.tar test 压缩
tar zxvf test.tar 解压
-z:使用gzip解压缩
-v:详细输出模式
-f:文件名:使用归档文件
-c :创建新文件
-x:减压缩归档文件
查看网络配置信息比如ip,ifconfig(liunx)
windows下用ipconfig
vi:
vi filename 进入filename中
vi有两种模式:
命令模式:进入vi时默认就是命令模式
编辑模式:可以编辑文本内容
模式切换:
命令模式进入编辑:i(当前位置)
编辑模式退出到命令模式:esc
命令模式退出vi
:q 退出vi
:q!不保存退出
:wq保存退出
liunx中 >, >>, <
>, >>将内容定向输出到某文件当中:
eg: adb logcat - v time > test1.txt 覆盖原内容
adb logcat - v time >> test1.txt 追加到后面
<:命令默认从键盘获得的输入,改成从文件,或者其它打开文件以及设备输入
eg:mysql -u root -p -h test < test.sql 导入数据
清屏:
clear (Windows是cls)
标签:文件,zip,速记,命令,liunx,权限,root,目录 来源: https://www.cnblogs.com/mlping/p/16406395.html