SSH一些命令整理

已有 1839 次阅读2013-5-31 15:23 |个人分类:dayday

 ls命令(list)

>>显示当前目录中的文件和子目录


ls 无参数,区别于ls -a

ls -a 显示所有文件,包括. .. .htaccess .bash_history  .bash_profile .bashrc .cshrc等文件,相当于在cuteftp软件中设置-a参数一样。

ls -A 跟 -a 参数的区别是  不显示 . ..目录

ls -alh 这个指令意思就是 -a显示全部 -l详细列表 -h  (human)的意思,给人看的格式


cd命令(Change Directory)

>>进入指定目录

cd ..   回到上一级

cd ~    回到用户根目录,比如/home/zlz

cd –  回到上一目录

cd /    回到根目录,最根部位 如 /

注:Linux中,”.”表示当前目录,”..”表示上一层目录,”/”表示根目录,”~”表示用户根目录


mv命令(move)

>>移动及重命名文件

mv hzlzh.txt ..  将当前目录的hzlzh.txt移动到上一级目录

mv test.txt hzlzh.txt 将test.txt重命名为hzlzh.txt


wget命令(web get)

>>远程下载东西,速度一般是 3-10M/s,奇快。

wget http://wordpress.org/latest.zip  这个指令可以瞬间下载完最新版的wordpress

wget -c http://**********.zip     -c参数可以用于上次未载完的文件,继续下载

压缩解压命令

unzip wordpress.zip 把刚刚下载的那个包解压到当前目录,之后就可以安装了

tar -czfv backup.tar.gz wwwroot  把wwwroot前目录打包成backup.tar.gz 文件

tar -xzfv backup.tar.gz    把文件backup.tar.gz 中的内容解压到当前目录

注:关于 czvf和xzvf的意思:-c创建,-x解压,-z使用gzip压缩,-f必选项,-v显示过程


mysql命令

>>此处只介绍备份和还原操作

备份:

mysqldump -h数据库 -u用户名 -p密码 库名 >生成文件名字.sql

还原:

mysql -h mysql.xx.xx -p mysql_dbname -u mysql_dbuser

提示你输入密码,输入密码后然后回车

会出现MySQL操作提示符号 >

然后输入下面的命令

source xxxx.sql

请先确认xxxx.sql这个文件再当前目录下

之后回车即可!


chmod命令

>>改变文件或目录的权限

chmod 777 [filename] 把某文件权限设置成777

chmod -R 775 [dirname]  这里的-R 递归遍历目录其下的所有文件及目录 777

rm命令

>>删除文件或目录

rm [filename] 删除某文件

rm -rf [dirname] 强行删除目录及其下的所有文件,慎用!

cp命令

>>拷贝

cp -rf test.php /wwwroot 把test.php文件拷贝到wwwroot目录

mv命令

>>移动或重命名

mv wwwroot/index.php . 把wwwroot/index.php这个文件移动到当前目录

mv index.php index.html 把index.php文件重命名为index.html

vi命令

>>打开并编辑文件

vi [filename] 之后按“insert”键进入编辑状态,编辑完成后按ESC 进入命令状态,

输入

:q! 不保存退出

:wq 保存并退出


——-其他命令——- 说不定有你没用过的命令哟,嘎嘎!

df -alh 显示当前disk的使用信息,-a[all] -l[list] -h[human]

du -sSh * 显示当前目录下的各文件大小,并递归计算出目录的大小

who -b 系统最近一次重启的时间

who -a 显示更详细的内容,包括了-b -d -t -r -T -u等参数

who am i 这个不用解释

pwd 显示当前目录

mkdir [dirname] 新建目录

date 显示当前主机时间

logs [dirname] 列出该目录下存在的所有文件内容,慎用!会刷屏的

echo helloword>index.php 创建一个文件 index.php 并写如内容:helloword

less [filename] 显示文件内容

more [filename] 显示文件内容,可分页

crontab命令 

>>设置定时执行脚本或任务,如定时周期性的备份网站数据库,并email发送到指定邮箱;


参数就几个很简单:


crontab -l 显示现有任务条目 

crontab -r 删除当前的任务 

crontab -e 编辑任务单,一般使用 nano 编辑,如DH。


任务格式:  */10 * * * * uptime >> helloword   [uptime代码功能见文末]


时间参数:


15 * * * * : 每小时第15分执行1次 

15,18 * * * * : 每小时第15和18分各执行1次 

*/15 */2 * * *: 每隔15分钟执行1次 

15 20 * * 6: 每周星期6的20:15执行1次


实例:在DH空间下,定时备份数据库的过程如下。


cd ~ 

mkdir backups 

vi backups/do.sh


之后进入vi编辑状态,按i键 之后右键拷贝以下代码:


cd /home/username/backups/ 

mkdir mysql 

suffix=$(date +%y%m%d) 

mysqldump –opt -uusername -ppw -hdb dbname > mysql/dbname.$suffix.sql 

tar zcf archives/mysql_backup.$suffix.tar.gz mysql/* 

rm -r mysql/ 

mutt your@example.com -a /home/username/backups/archives/mysql_backup.$suffix.tar -s "MySQL Backup"


其中 username 是ssh的用户名,-u数据库用户名 -p密码 –h数据库地址 dbname库名,然后继续输入:


chmod 775 ~backups/do.sh 

crontab –e 

15 * * * * /home/user/backups/do.sh


也就是说每15分钟,就备份一次数据库,并发email附件给 your@example.com


其他命令


grep -i /home/ /etc/pas*******swd | wc –l   去掉******号,显示当前host上挂这多少的用户 

top  显示当前host cpu 状态等,很详细 

w 显示host在线用户数量及部分负荷信息 

upwime 同上,显示的信息更少 

dost2unix 1.txt 把1.txt的DOS编码转换成unix下的,其实就是去除^M

mutt -s "test mail" admin@zlz.im  发送一封测试邮件

ftp> get file.gif "| xv -" 本地查看远程文件

ftp> put "| tar cvf – . | gzip " file.tar.gz 本地发送远程文件

ftp> get file.tar "| tar xvf -" 本地获取远程文件

查CPU信息


grep "model name" /proc/cpuinfo


查内存


grep MemTotal /proc/meminfo


查CPU位数


getconf LONG_BIT


查内核版本


uname -a


查系统最初软件包


more /root/install.log | wc -l


查DNS


cat /etc/resolv.conf


查默认语言


echo $LANG $LANGUAGE


查看最近的SSH登录记录


last


查看当前主机的所有用户名


cut -d: -f1 /etc/pas[hzlzh]swd  去掉[hzlzh]MG


查看所有已建立链接


netstat -antp


查看系统运行时间,当前在线用 户数量,系统负载


uptime


列出所有PCI设备


lspci -tv


查看服务器变量资源


env


查看挂在的分区状态


mount | column -t


查日历-查时间


cal          date

du命令


>> 显示磁盘使用情况


参数:du –sh 显示每一个文件夹及其子文件夹所耗磁盘大小。

与这个命令一样很有用:find ~/ -type f | wc –l 检查是否有冗余文件


awk命令


>>awk有3个版本: awk\nawk\gawk,一般指gawk。用于对文件或字符串中

基于指定规则来分解抽取信息,常配以正则表达式书写,例如:


awk '/hello/' file   显示file这个文件中,包含字符串hello 的行。


另外,tar打包排除某个或多个子目录|ssh AWK命令 这篇文章中用到过。


wc命令(water-closet)


>>可计算文件byte数、字数、或列数。


参数:-c 显示字符数 -l显示列数 –w 显示字数,例如:


wc<<hzlzh

> i love you

> hzlzh

1  3 11


wc<<hzlzh 意思是之后输入hzlzh结束编辑状态,将输入字符传给wc命令,

估得到i love you的结果是,1行3列11字符。


tr 命令


>>字符处理功能,很实用的东东。注:是单个字符处理,不能处理词。


例如:


# cat file | tr [A-Z] [a-z] > new_file   把file文件中的大写字母都替换为小写;

# cat file | tr "123" "abc" > new_file   把file中的 1->a 2->b 3->c 如此替换;

# cat file | tr -d "2b" > new_file  把file 中的数字2全部删除,把小写b全部删除;


uniq命令


>> 显示唯一的行,排除重复部分。


uniq flie 遇到重复的行,仅显示一次;

uniq -c flie  显示文件中每行出现的次数;

uniq –dflie 只显示有重复的行;

可与 cat flie对比。


cut命令


>>从文件或文本流中提取文本列。


参数:-b、-c、-f分别表示字节、字符、字段。


使用常配合正则表达式,例如:去掉  pass*****wd 中间的 ***号


cut -d : -f 1 /etc/pas****swd|sort; 列出当前host搜有用户,升序排列。有兴趣可以看看你的host有多少用户了。


head tail sed 命令


>> 这三个命令可用与查看文件部分内容,区别于vi vim cat less 等命令。


head -5 /etc/pas****swd  只显示前5行;

tail -5 /etc/pas****swd  只显示末尾5行  若加是那个参数-f 则始终读取后5行,可以达到监控的效果;

sed -n '5,10p' /etc/pas****swd  显示第5—10行。


其他命令 一点补充…


ps  最常用最强大的命令之一,可不是photoshop的缩写,呵呵,用来查看当前系统里用户的状态,其实呢就是top命令里的一部分;


man 查询帮助手册,遇到疑问不妨一试,效果奇佳;


cat /etc/issue 查看linux版本详细信息;

lsb_release -a 同上;

cat /proc/version  查内核版本;

uname -a   略;

exit  登出的好习惯

logout 同上

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

郑重声明:本站属技术交流,非赢利性网站。
本站言论纯属发表者个人意见,与“建筑在线”立场无关。
涉及政治言论一律删除,请所有会员注意. 本站资源由会员从网上收集整理所得,版权属于原作者。
本站所有资源是进行学习和科研测试之用,请在下载后24小时删除
本站出于学习和科研的目的进行交流和讨论,如有侵犯原作者的版权
请来信告知,我们将立即做出整改,并给予相应的答复,谢谢合作!