linux命令使用总结

## linux 查看系统全部信息

uname -a

## linux 查看系统内核信息

uname -r

## linux 查看系统版本号信息

cat /etc/redhat-release 

## linux修改目录的读写权限

chmod 777 目录/文件
## 修改sh文件的权限
chmod +x *.sh

## linux修改目录的使用角色权限

chown 角色 目录名

例如:修改logs目录使用角色权限

  drwxr-xr-x 2 root root 4096 Feb 25 10:14 logs

  drwxr-xr-x 2 nana root 4096 Feb 25 10:14 logs

## linux查看目录的使用角色权限

ll
ls -hl

## linux查看磁盘占用比例

df -lh

注:Used:已经使用的空间
  Avail:可以使用的空间
  Mounted on:挂载的目录

## 读取文件

rz 
sz

## 查看文件

cat DirName
more DirName

## 创建目录

mkdir DirName

## 创建文件

touch DirName

## 删除目录/文件

rm DirName

注:-i 删除前逐一询问确认。
  -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
  -r 将目录及以下之档案亦逐一删除。
       -rf将目录删除,无需确认。

## 复制目录/文件

cp DirName NewDirName

注:-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
  -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
  -f:覆盖已经存在的目标文件而不给出提示。
  -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
  -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
  -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
  -l:不复制文件,只是生成链接文件

## 查看进程

$ ps -ef|grep java
$ ps -ef|grep jar/war包名

注:通过 p s命令可以查找出进程的相对路径,但查不到的进程的详细信息,如绝对路径等。

## 查看进程所在目录

ll /proc/PID

注:Linux在启动一个进程时,系统会在/proc下创建一个以PID命名的目录,在该目录下会有我们的进程的信息,其中包括一个名为exe的文件,记录了绝对路径,通过ll或ls –l命令即可查看。

  cwd 符号链接的是进程运行目录;

  exe 符号连接就是执行程序的绝对路径;

  cmdline 就是程序运行时输入的命令行命令;

  environ 记录了进程运行时的环境变量; fd 目录下是进程打开或使用的文件的符号连接。

## 实时查看tomcat日志

tail -f catalina.out 

## 文件/目录重命名或移入其它位置

mv DirName NewDirName

注:-i: 若指定目录已有同名文件,则先询问是否覆盖旧文件;
  -f: 在mv操作要覆盖某已有的目标文件时不给任何指示;

  mv 文件名 文件名(将源文件名改为目标文件名)
  mv 文件名 目录名(将文件移动到目标目录)
  mv 目录名 目录名(目标目录已存在,将源目录移动到目标目录,目录不存在则改名)
  mv 目录名 文件名(出错)

## 查看目录下的文件

dir DirName

## 删除乱码文件

## 查看文件的字节号
ls -i

## 删除指定字节号的文件
find -inum 节点号 -delete

## 查询当前终端的字符集

echo $LANG

## 杀死僵尸进程

## 查找僵尸进程
ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]'

查询结果如下:
Z 12334 12339 /path/cmd

## 杀死子进程
kill -HUP 12339

## 杀死父进程
kill -HUP 12334

以上无效,尝试下面命令:
## 杀死僵尸进程
ps -ef | grep defunct | grep -v grep | awk '{print "kill -18 " $3}'

 ## linux下重启nginx

./nginx -s reload

## linux使用 vi命令 

## 修改或创建并编辑文件
vi fileName 
## 打开文件,并将光标置于第n行首 
vi +n fileName 
## 打开文件,并将光标置于最后一行首 
vi + fileName 
## 打开文件,并将光标置于第一个与pattern匹配的串处 
vi +/pattern fileName 
## 在上次正用vi编辑时发生系统崩溃,恢复fileName
vi -r fileName  
## 打开多个文件,依次进行编辑 
vi fileName....fileName 

## 编辑文件: 
i - 在光标前 
I - 在当前行首 
a - 光标后 
A - 在当前行尾 
o - 在当前行之下新开一行 
O - 在当前行之上新开一行 
r - 替换当前字符 
R - 替换当前字符及其后的字符
## 编辑完后按 esc 退出编辑

## 退出vi
:wq 保存修改并退出
:q! 不保存并退出
:q 退出vi

参考 vi命令大全

## linux查询 ip地址

ifconfig
ip addr

## linux连接ftp传输文件

## 方式一
sftp -oHostkeyAlgorithms=+ssh-dss -oPort=端口 用户名@ip地址
## 方式二
sftp -oPort=端口 用户名@ip地址

如果ftp未连接上并给出提示信息类似于 /export/home/amn/.ssh/known_hosts,则删除对应文件,例如 rm -rf /export/home/amn/.ssh/known_hosts

## linux使用 curl命令

## curl命令格式
curl [option] [url]

## get请求网址并输出内容
curl http://www.codebelief.com/

## 下载文件到本地 Begin ##

## 使用 > 将输出重定向到本地文件中
curl http://www.codebelief.com/ > index.html

## 使用 -o 将输出保存到本地文件index.html中(可以指定多个)
curl -o index.html http://www.codebelief.com/

## 使用 -O 将url中的文件名作为输出文件名,并保存的本地(可以指定多个)
curl -O http://tool.chinaz.com/tools/unicode.aspx

## 循环下载,如下:下载文件dodo1.JPG、dodo2.JPG、dodo3.JPG
curl -O http://www.linux.com/dodo[1-3].JPG

## 重命名下载,如下:下载文件名字hello_dodo1.JPG、hello_dodo2.JPG、bb_dodo1.JPG、bb_dodo2.JPG
curl -o #1_#2.JPG http://www.linux.com/{hello,bb}/dodo[1-2].JPG

## 分块下载
curl -r 0 -200 -o dodo1.part1 http://www.linux.com/dodo1.JPG
curl -r 200 - -o dodo1.part2 http://www.linux.com/dodo1.JPG
## 合并
cat dodo1.part* > dodo1.JPG

## 断点续传
curl -C -O http://www.linux.com/dodo1.JPG

## 显示下载进度条
curl -# -O http://www.linux.com/dodo1.JPG
## 不显示下载进度条
curl -s -O http://www.linux.com/dodo1.JPG

## 通过ftp下载文件
curl -O -u 用户名:密码 ftp://www.linux.com/dodo1.JPG
curl -O ftp://用户名:密码@www.linux.com/dodo1.JPG

## 下载文件到本地 End ##

## 通过ftp上传文件
curl -T dodo1.JPG -u 用户名:密码 ftp://www.linux.com/img/

## 使用 -A 自定义用户代理,如下:伪装成安卓火狐浏览器对网页进行请求
curl -A "Mozilla/5.0 (Android; Mobile; rv:35.0) Gecko/35.0 Firefox/35.0" http://www.baidu.com

## 使用 -H 传递特定的 header
curl -H "Referer: www.example.com" -H "User-Agent: Custom-User-Agent" http://www.baidu.com
curl -H "Cookie: JSESSIONID=D0112A5063D938586B659EF8F939BE24" http://www.example.com

## 使用 -c 保存cookie,curl默认不会保存cookie
curl -c "cookie-example" http://www.example.com

## 使用 -b 读取cookie, -b后面可以是字符串,也可以是存储cookie的文件名
curl -b "JSESSIONID=D0112A5063D938586B659EF8F939BE24" http://www.example.com 
curl -b "cookie-example" http://www.example.com

## 使用 -d 发送POST请求,也可省略-X,默认为POST请求
curl -d "userName=nana&passwd=123456" -X POST http://www.example.com/login
curl -d "userName=nana&passwd=123456" http://www.example.com/login
## 设置请求头,发送POST请求 curl -l -H "Content-type: application/json" -X POST -d '{ "mobileNo":"15745451122", "vcode":"313864" }' http://localhost:8888/login ## 保存cookie的登录 curl -c “cookie-login” -d “userName=nana&passwd=123456” http://www.example.com/login ## 再次浏览,进入登录成功后的页面 curl -b “cookie-login” http://www.example.com/login

## 获取公网IP

curl icanhazip.com

 ## linux 查找文件路径

find /|grep fileName

 ## 清空文件

CP /dev/null catalina.out  还未尝试

 ## 查看内存使用

df -h

############################################################################

## grep 命令使用

## 在文件中查找关键字出现的信息,并保存在一个文件里

grep string file | tee -a newFile

例如:
## 查询用户在日志中的信息
grep username=nana info.log | tee -a infoNana.log

## 查找关键字在文件中出现的次数

grep -o 'string' file | wc -l
例如: ## 查询 请求成功 在目录中出现的次数 grep
-o 'param3=请求成功' * | wc -l

 ## 查询关键字在文件里的信息

cat file | grep string
grep string file

例如:
cat info.log | grep param3=请求成功
grep param3=请求成功 info.log

 

posted @ 2019-01-08 10:21  娜娜娜娜小姐姐  阅读(249)  评论(0编辑  收藏  举报