Linux SSH常用命令

管理VPS以及独立主机必备

  1. 压缩相关
    tar,用tar命令可以压缩文件夹,同样也可以解压缩,tar压缩的文件在win下用winrar或者7z都是可以解压的,如果不能,将后缀名改成.rar继续操作即可。
    压缩一个文件夹:
    tar -czvf cosbeta.tar ./cosbeta(tar -czvf 压缩后的名字.tar ./要压缩的文件夹)
    解压缩文件:tar -zxvf cosbeta.tar
    对于zip文件就更简单了: unzip cosbeta.zip
    请不要去操作winrar文件,linux下支持这个东西不多,如果你有winrar文件,建议在本地解压,zip压缩后再传到服务器
  2. 拷贝、移动和删除文件
    cp ./current/* ./dest_folder 该命令是将current下所有的文件包括文件夹拷贝到dest_folder下,如果文件或文件夹存在则忽略之。
    下面是Copy命令CP的详细说明
    cp [options] source dest
    cp [options] source… directory说明:将一个档案拷贝至另一档案,或将数个档案拷贝至另一目录。 参数:-a 尽可能将档案状态、权限等资料都照原状予以复制。
    -r 若 source 中含有目录名,则将目录下之档案亦皆依序拷贝至目的地。
    -f 若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制。
  3. SCP命令:    scp是安全的文件拷贝,基于ssh的登录假定你想把本地计算机/home下的一个名为a.tar.tz的文件拷贝到远程服务器192.168.0.2上的/home/tmp。而且你在远程服务器 上的帐号名为root。可以用这个命令:
    scp /home/a.tar.tz root@192.168.0.2:/home/tmp/如果把文件从远程机器拷贝到本机当前目录用这个命令:scp root@192.168.0.2:/home/a.tar.tz拷贝远程机器的整个目录下的文件
    scp -r root@192.168.0.2:/home/* ./
  4. mv命令(移动文件或者重新命名文件)
    mv cosbeta cosbeta2 (将cosbeta改名为cosbeta2)
    mv ./cosbeta/* /home/newcosbeta (将cosbeta下的所有文件移动到新的目录下)
    RM命令(删除文件或者文件夹,不可恢复,请谨慎操作)
    rm *.php 将删除所有的phg文件
    rm * 将删除所有的文件(文件夹不为空则不能删除)
    rm -rf * 将删除所有的文件包括文件夹(请谨慎谨慎使用,这个-rf将不会给出任何警告而将文件删除)
  5. wget命令.
    确切的说,这个命令不一定其他虚拟主机都支持,但是国外的大多安装了这个程序。
    wget http://storyday.com/index.php (将会http下载这个网页,并且保存成index.php)
    wget -O wordpress.tar.gz http://wordpress.org/latest.tar.gz 将下载的结果保存在wordpress.tar.gz
  6. 改变目录 cd改变你的根路径,键入cd命令,按回车键。进入一个子目录,键入cd命令,空格,然后是子路径名(例如:cd命令 Documents),再按回车键。

    进入当前目录的上一级目录,键入cd命令,空格,两个点,然后按回车键。

    进入一个特定的目录,键入cd命令,空格,路径名(例如 cd命令 /usr/local/lib),再按回车键。

    为了确定你所在的目录,你可以键入pwd,按回车键,你将看到你所在的当前目录名称。

    进入根目录 cd -P

    ls和ll ll 列出来的结果详细,有时间,是否可读写等信息 ,象windows里的详细信息,ls 只列出文件名或目录名 就象windows里的列表

    ll -t 是降序,  ll -t | tac 是升序
    ll不是命令,是ls -l的别名

  7. netstatnetstat -an | awk ‘/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}’查看系统tcp连接中各个状态的连接数。netstat -an |grep 80 |grep ESTA |awk ‘{print$5 “\n”}’ |awk ‘BEGIN {FS=”:”} {print $1 “\n”}’ |sort |uniq

    查看和本机80端口建立连接并状态在established的所有ip

    netstat -n | awk ‘/^tcp/ {n=split($(NF-1),array,”:”);if(n<=2)++S[array[(1)]];else++S[array[(4)]];++s[$NF];++N} END {for(a in S){printf(“%-20s %s\n”, a, S[a]);++I}printf(“%-20s %s\n”,”TOTAL_IP”,I);for(a in s) printf(“%-20s %s\n”,a, s[a]);printf(“%-20s %s\n”,”TOTAL_LINK”,N);}’

    输出每个ip的连接数,以及总的各个状态的连接数。