1.wget
wget是一个从网络上自动下载文件的自由工具,支持通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理。
命令格式:wget [options] [URL]
2.scp(服务器之间的互相拷贝)
scp 命令是 SSH 中最方便有用的命令了。试想在两台服务器之间直接传送文件,仅仅用 scp 一个命令就完全解决了。
你可以在一台服务器上以 root 身份运行scp servername:/home/ftp/pub/file1 ./ 这样就把另一台服务器上的文件 /home/ftp/pub/file1 直接传到本机器的当前目录下了。
当然你也可以用 scp /tmp/file2 servername:/boot 把本机上的文件 /tmp/file2 送到另一台机器的 /boot 目录下。而且整个传送过程仍然是用 SSH 加密的。
scp就是secure copy,是用来进行远程文件拷贝的。数据传输使用 ssh,并且和ssh 使用相同的认证方式,提供相同的安全保证 。 与rcp 不同的是,scp 在需要进行验证时会要求你输入密码或口令。
其通用格式,可以简记为,scp -r 源文件 目标位置:表示将源文件拷贝到目标位置。其中-r选项,是在拷贝目录时使用。
(1)scp -r live/ zhaolincheung@db-feiyan.db01.baidu.com:/home/bugfixpcui/app/search/video/
将本地 live目录传送到另一台zhaolincheung@db-feiyan.db01.baidu.com机器的/home/bugfixpcui/app/search/video/目录下。
(2)scp -r ala-common/ zhaolincheung@db-feiyan.db01.baidu.com:/home/bugfixpcui/app/search/video/
将本地ala-common目录传送到另一台zhaolincheung@db-feiyan.db01.baidu.com机器上的/home/bugfixpcui/app/search/video/目录下。
(3)scp zhaolincheung@192.168.11.22:/home/abc/file1.php ./
表示将远程机器192.168.11.22上/home/abc/file1.php文件拷贝到当前目录。其中执行后需要输入用户zhaolinchueng的密码才可以。
3.ps aux
常用ps命令参数 进程查看命令,需掌握一些最常用的命令参数就可以了。最常用的三个参数是u、a、x。
a 显示终端上的所有进程,包括其他用户的进程。x 显示没有控制终端的进程。u user 用户名。
4.cp:拷贝目录
cp – r /usr/xu/ /usr/liu/ 将/usr/xu目录中的所有文件及其子目录拷贝到目录/usr/liu中
5.mv:更改目录或文件名
mv /home/abc /home/abcd
6.find:查找某目录下包含某关键词的文件
find . -name ‘*.*’ | grep “*.*”
7.rm:删除目录
rm -rf 目录名
8.tail:查看文件最后的几行
tail 文件名:表示查看文件的后10行。
其中有一个很好用的参数” -f “,使用此参数时,tail 不会回传结束信号,除非我们去自行去中断它;相反的,它会一直等待一段时间,一直到他发现资料自它最后一次被读取后,又被加入新的一行时,即它将会以一定的时间实时追踪该档的所有更新。eg: tail -f file
tail的另一个参数是-n N,使用此参数是查看最后N行。如:tail -n 100 file :表示查看文件file的后100行。
9.rz和sz:linux和windows之间互传文件
rz -be:上传windows的东西到linux中。运行该命令会弹出一个文件选择窗口,从本地选择文件上传到服务器。
sz:将linux中的文件下载到windows中。文件会下载到secure crt中的默认下载目录。如下所举例:
sz -be ui.tar.gz:表示将ui.tar.gz下载到自己的本机中。
注:
配置上传下载目录:选择某个”session 标签”->”会话选项”->”终端”->”X/Y/Zmodem”,之后就会看到上传和下载目录,可以在这里设置。
10.MySQL:连接MySql数据库
(1)命令格式如下:mysql -hhost -uusername -ppassword -Pport
其中mysql需要在usr/local/bin目录下有可执行文件。否则,需要使用mysql安装目录的绝对路径下的mysql命令。
绝对路径的使用方法为:/mysql安装目录/mysql -hhost -uusername -ppassword -Pport
如:/usr/local/webserver/mysql/bin/mysql -hhost -uusername -ppassword -Pport
(2)给出一个使用示例:/usr/local/webserver/mysql/bin/mysql -h192.168.112.123 -usean -prewq1234 -P3306 –default-character-set=utf8
表示连接主机为192.168.112.123、用户名为sean、密码为rewq1234、端口号为3306的mysql数据库,默认字符集utf-8。
(3)连接上mysql后,可以使用下面简单的命令查看所包含的数据库、数据库下所包含的表、表的结构.
显示所有数据库的命令:show databases;
使用某个数据库:use 数据库;
显示某个数据库中的表的结构:show create table 表名;
11.crontab:定时执行linux下的计划任务
可以使用命令:crontab -e
之后会打开当前用户的计划任务文件,用户可以在这里输入要执行的命令即可。
例如:
(1)首先执行crontab -e
(2)然后输入:0 5 * * * cd /home/seanzhao; sh dingding_insert_db.sh
表示每天5点0分执行/home/seanzhao目录下的dingding_insert_db.sh脚本。
crontab使用时,遇到过一个问题:当如下写时,第一行的命令可以执行,第二行的命令却不执行,即test1.php文件执行了,但test2.php文件没有执行。
0 5 * * * /usr/local/php/bin/php /data/analys/php/test1.php
30 5 * * * /usr/local/php/bin/php /data/analys/hive/test2.php
后来,将第二行更改为如下,即需要先使用cd进入所要执行的文件的目录才行,这样test1.php和test2.php就都执行了。
0 5 * * * /usr/local/php/bin/php /data/analys/php/test1.php
30 5 * * * cd /data/analys/hive; /usr/local/php/bin/php test2.php
12.vim下的代码缩进设置
代码一般采用每级缩进4格。可以通过在vim命令行状态下输入:set tabstop=4;set expandtab这两个命令实现。
其中linux下tab的默认缩进是一个制表符(8个空格),通过set tabstop=4我们设置为制表符为4个空格。
通过set expandtab命令,表示在缩进和遇到 Tab 键时使用空格替代,同时使用set noexpandtab表示 取消该设置。比如按一次tab缩进一个制表符(相当于4个空格的长度),如果设置了set expandtab,则当按tab键的时候,是缩进4个空格,而不是一个制表符,则用户在按回退键时也是在回退空格。也就是说:如果不设置expandtab,缩进时缩进的是制表符;设置了expandtab,缩进时是缩进的空格,而不是制表符。
set shiftwidth=N:是当用户shift+”V”选择一段文本后,按住shift+“<”、shift+“>”时,缩进N个空格。
13.tar:解压和压缩
打包(压缩)当前目录为abc.tar.gz:tar -zcvf abc.tar.gz *
解压某个目录到当前位置:tar -zxvf abc.tar.gz
区别:打包是zcvf(其中c表示create),解压是zxvf(其中x是extract)。
14.php:执行php文件
eg:/usr/local/php/bin/php /home/zhaolincheung/test.php :执行/home/zhaolincheung/目录下的test.php文件。
15.“>>”和“>”
>>:表示追加文本;eg:tail -f file1 >> result.txt 表示将file1的内容实时追加到result.txt中。
>:表示重写文本;eg: tail -f file1 > result.txt 会首先清空result.txt中的内容,然后才将内容写到result.txt中。
16.curl
curl url:会返回url解析后的内容;
eg: curl www.baidu.com :会将www.baidu.com的页面源代码输出到标准屏幕。
curl还可以进行hosts映射,即完成/etc/hosts文件的功能。
如我们有下面一个需求:通过http访问http://bj.ganji.com/jobfairs/jobfairs_im_port.php?action=getIms,获取其返回的数据。但是我们所在的环境和bj.ganji.com不在一个网段,所以这就需要进行一个域名和ip进行映射,如下:
10.3.255.201 http://bj.ganji.com
但如果我们不想更改/etc/hosts文件,此时我们可以通过linux下的curl命令来进行绑定获取,可以如下方式进行hosts映射:
curl -H “Host: bj.ganji.com” http://10.3.255.201/jobfairs/jobfairs_im_port.php?action=getIms
这样当用户访问http://bj.ganji.com/jobfairs/jobfairs_im_port.php?action=getIms,其实就是访问了http://10.3.255.201/jobfairs/jobfairs_im_port.php?action=getIms,而且会输出返回的数据。