find|grep|ssh|文件传输scp|sz|清屏|创建链接|查看端口占用情况|\ 管道|重定向|sed|统计代码行|md5sum|解压乱码问题|
一.find命令
基本格式:find path expression
1.按照文件名查找
*(1)find / -name httpd.conf #在根目录下查找文件httpd.conf,表示在整个硬盘查找
(2)find /etc -name httpd.conf #在/etc目录下文件httpd.conf
(3)find /etc -name '*srm*' #使用通配符*(0或者任意多个)。表示在/etc目录下查找文件名中含有字符串‘srm’的文件
(4)find . -name 'srm*' #表示当前目录下查找文件名开头是字符串‘srm’的文件
2.按照文件特征查找
(1)find / -amin -10 # 查找在系统中最后10分钟访问的文件(access time)
(2)find / -atime -2 # 查找在系统中最后48小时访问的文件
(3)find / -empty # 查找在系统中为空的文件或者文件夹
(4)find / -group cat # 查找在系统中属于 group为cat的文件
(5)find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件(modify time)
(6)find / -mtime -1 #查找在系统中最后24小时里修改过的文件
(7)find / -user fred #查找在系统中属于fred这个用户的文件
(8)find / -size +10000c #查找出大于10000000字节的文件(c:字节,w:双字,k:KB,M:MB,G:GB)
(9)find / -size -1000k #查找出小于1000KB的文件
3.使用混合查找方式查找文件
参数有: !,-and(-a),-or(-o)。
(1)find /tmp -size +10000c -and -mtime +2 #在/tmp目录下查找大于10000字节并在最后2分钟内修改的文件
(2)find / -user fred -or -user george #在/目录下查找用户是fred或者george的文件文件
(3)find /tmp ! -user panda #在/tmp目录中查找所有不属于panda用户的文件
二、grep命令
基本格式:grep expression
1.主要参数
[options]主要参数:
-c:只输出匹配行的计数。
-i:不区分大小写
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
pattern正则表达式主要参数:
\: 忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$: 匹配正则表达式的结束行。
\<:从匹配正则表达 式的行开始。
\>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求 。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
.:所有的单个字符。
* :有字符,长度可以为0。
2.实例
(1)grep 'test' d* #显示所有以d开头的文件中包含 test的行
(2)grep ‘test’ aa bb cc #显示在aa,bb,cc文件中包含test的行
(3)grep ‘[a-z]\{5\}’ aa #显示所有包含每行字符串至少有5个连续小写字符的字符串的行
(4)grep magic /usr/src #显示/usr/src目录下的文件(不含子目录)包含magic的行
*(5)grep -r magic /usr/src #显示/usr/src目录下的文件(包含子目录)包含magic的行
(6)grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配’magic’,而不是’magical’),
ifconfig
安装openssh-server。使用命令:
# apt-get install openssh-server
vim /etc/ssh/sshd_config
将#PasswordAuthentication yes前的注释符#去掉
将#PermitRootLogin prohibit-password前的注释符#去掉,将prohibit-password改为yes
执行service ssh start启动ssh服务
将其设置为开机启动
编辑vim /etc/rc.local
在exit 0前一行添加
/etc/init.d/ssh start
[安装ssh][https://blog.csdn.net/java_dotar_01/article/details/76942563]
ssh root@192.168.1.11
本地>>>远程
scp /home/space/music/1.mp3 root@www.runoob.com:/home/root/others/music
scp /home/space/music/1.mp3 root@www.runoob.com:/home/root/others/music/001.mp3
scp -r /home/space/music/ root@www.runoob.com:/home/root/others/
远程>>>本地
scp root@www.runoob.com:/home/root/others/music /home/space/music/1.mp3
scp -r www.runoob.com:/home/root/others/ /home/space/music/
如果远程服务器防火墙有为scp命令设置了指定的端口,需要使用 -P 参数来设置命令的端口号,格式如下:
#scp 使用端口 4588
scp -P 4588 remote@www.runoob.com:/usr/local/sin.sh /home/administrator
使用scp命令要确保使用的用户具有可读取远程服务器相应文件的权限,否则scp命令是无法起作用。
在linux之间传输文件使用scp就行了 如果是在windows下使用xshell控制linux时:
上传文件直接到那个目录,然后把文件拖进去就可以
从linux下载文件时,
sz test.txt 然后再选择本地存储目录就可以。
clear
或者ctrl+l
ln -s 源目录或文件 目标快捷方式
-s表示创建符号链接
-------------------------------
符号链接的源可以是目录或文件
硬链接一般只能是文件
-------------------------------
硬链接:可以看做一个指针,指向源文件.硬链接与源文件是一个文件.
只要某文件有一个硬链接,该文件就不会真正的物理的删除.
所以,给一个文件创建硬链接之后,把源文件删除,硬链接还表示源文件,可以正常用.
符号链接(软链接):是另外一个文件,相当于windows下的快捷方式.
产出源文件之后,创建的符号链接就没法用了.
netstat -anp | grep 1080 #打印占用1080端口的进程以及PID
kill -9 PID #关闭那个进程
-9 强制结束
-3 ctrl+c时向进程发送这个信号,程序收到这个信号会结束.
> 写入到新文件
>> 追加到新文件
| 将上一个程序的输出作为下一个程序的输入,并且两者是同时进行的,不是等到第一个完全输出之后再输入到第二个程序。
nl /etc/passwd | sed '2d' #删除第二行
nl /etc/passwd | sed '3,$d' #删除3到最后一行
sed -e 4a\newline testfile #使用sed 在第四行后添加新字符串
nl /etc/passwd | sed '2,5d' #nl列出文件内容并带行号(不算空格行)
1 root:x:0:0:root:/root:/bin/bash
6 sync:x:5:0:sync:/sbin:/bin/sync
7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
.....(后面省略).....
find . -name "*" -print | xargs wc -l
md5sum test.txt
2435345254......3422423 test.txt
通过unzip行命令解压,指定字符集
unzip -O CP936 xxx.zip
欢迎与我分享你的看法。 转载请注明出处:http://taowusheng.cn/