Linux命令大全

  • whereis file/folder用于查找文件/文件夹

  • history 查看历史执行命令

  • wget url

  • wget -c url -O 重命名文件名 下载文件

文件文件夹操作

复制

  • cp [源文件或目录] [目标文件或目录]

  • cp /TEST/test1/test01 /TEST/test2 假设复制源文件test1下的test01文件,目标目录为test2

  • cp -r /TEST/test1/. /TEST/test2 把test1中的文件夹及文件夹中所有文件复制到test2中

移动

  • mv [源文件或目录] [将要移动到的目录]

  • mv mongo.conf /etc 将mongo.conf文件移动到/etc目录下

  • mv -r /usr/local/mongodb /etc/usr/local路径下的mongodb文件夹移动到/etc目录下

删除

  • rm file 删除文件

  • rm -r folder 删除文件夹

  • rm -f file 强制删除

新建

  • touch file 新建空白文件

  • mkdir folder 在当前目录下生成a目录

文件读写及权限

  • vim mongo.conf 编辑文件

  • q! 不保存退出

  • qw! 强制保存退出

  • cat mongo.conf 查看文件内容

  • ls -l 文件名 查看linux文件的权限

  • ls -la 文件夹名称(所在目录) 查看linux文件夹的权限

  • ll 查看当前目录下各文件和目录的属性

  • sudo chmod -(代表类型)×××(所有者)×××(组用户)×××(其他用户) 文件名

    r=4 表示可读取,w=2 表示可写入,x=1 表示可执行
    若要rwx属性则4+2+1=7;   
    若要rw-属性则4+2=6;   
    若要r-x属性则4+1=7。
  • sudo chmod 777 file 每个人都有读和写以及执行的权限

压缩及解压缩

-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。

下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出

参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。
  • tar --cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg

  • tar --czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz

  • tar --cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2

  • tar --cZf jpg.tar.Z *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

  • tar --xvf file.tar //解压 tar包

  • tar -xzvf file.tar.gz //解压tar.gz

  • tar -xjvf file.tar.bz2 //解压 tar.bz2tar --xZvf file.tar.Z //解压tar.Z

  • tar -tf aaa.tar.gz在不解压的情况下查看压缩包的内容

scp

用于Linux之间复制文件和目录

详细介绍

scp [可选参数] file_source file_target 

// 从本地复制到远程
scp [参数] local_file remote_username@remote_ip:remote_folder

// 远程复制到本地
scp [参数] remote_username@remote_ip:remote_folder local_folder
  • -q: 不显示传输进度条。

  • -C: 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)

  • -r: 递归复制整个目录。

  • -v:详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。

tree

tree -L n   // 展示n层结构
tree -d     // 只展示目录
  • -a 显示所有文件和目录。

  • -C 在文件和目录清单加上色彩,便于区分各种类型。

  • -d 显示目录名称而非内容。

  • -D 列出文件或目录的更改时间。

  • -i 不以阶梯状列出文件或目录名称。。

  • -l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。

  • -n 不在文件和目录清单加上色彩。

  • -N 直接列出文件和目录名称,包括控制字符。

  • -p 列出权限标示。

  • -P <范本样式> 只显示符合范本样式的文件或目录名称。

  • -q 用”?”号取代控制字符,列出文件和目录名称。

  • -s 列出文件或目录大小。

  • -t 用文件和目录的更改时间排序。

curl

参考

curl命令是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具。作为一款强力工具,curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征。

示例

选项-o将下载数据写入到指定名称的文件中,并使用--progress显示进度条:

curl http://man.linuxde.net/test.iso -o filename.iso --progress
######################################### 100.0%

使用--cookie "COKKIES"选项来指定cookie,多个cookie使用分号分隔:

curl http://man.linuxde.net --cookie "user=root;pass=123456"

参数说明

  • -a/--append 上传文件时,附加到目标文件

  • -o/--output 把输出写到该文件中

  • -O/--remote-name 把输出写到该文件中,保留远程文件的文件名

  • -u/--user <user[:password]> 设置服务器的用户和密码

  • -U/--proxy-user <user[:password]> 设置代理用户名和密码

端口以及进程状态检查

  • lsof -i:8080 查看8080端口哪个进程在使用

  • netstat -apn|grep mongo 查看mongo进程的端口ip使用

  • ps aux | less : 查看系统中所有进程

  • netstat -apn|grep a 检查a服务的监听等信息

  • telnet xxx.xxx.xxx.xxx port 端口测试

小技巧

  • ctrl+a 光标快速移动到行首

  • ctrl+e 光标快速移动到行尾

  • ctrl+u 快速删除光标到行首的命令

  • ctrl+k 快速删除光标到行尾的命令

  • 按一下Esc,放手在按一次右ctrl,可以调用上次命令的参数

  • lsb_release -a 查看系统版本

Last updated