最近三周常用的linux命令
2月份去了新公司,服务器是linux的,所以又开始接触linux命令了,下面记录下最近常用的几个命令和用的比较多的相关命令的参数。
pwd查看当前目录
cd目录切换,几个最常用的就是1)cd /切换到根目录 2)cd~ 切换到宿主目录,譬如用root用户登录,就会切换到root目录下 3)cd .. 切换到上层目录 4) cd -返回上次工作的目录
接下来就是查看文件的命令ll和ls,现在用ll的比较多,直接将所有的文件的详细信息显示,但是ls可以加很多的参数,它的功能更丰富些,譬如 ls -u按最近访问的时间排序,就方便查找文件。
ll查看一般就是查看文件的读写权限和所属者,所以下面来介绍下chown和chmod
chown是改变文件的所属者,在当前用户下拷贝或是下载来的文件的所属者就是当前用户,需要改的话就是用chown命令,当然这个命令只能用root用户使用,chown test:oracle 1.slq,这个命令就是将1.sql这个脚本的用户改成oracle组下的test用户,当然也可以只改用户或是只改组,改单个文件是如此,改文件夹和它文件夹下所有的内容就加上-R即可 chown - R test:oracle 1dir/
chmod就是改变文件的读写权限,linux下一般用三位八进制数字的形式来表示权限,第一位指定属主的权限,第二位指定组权限,第三位指定其他用户的权限,每位通过4(读)、2(写)、1(执行)三种数值的和来确定权限,读写执行权限都给就是7(4+2+1),只给读写权限就是6(4+2),参数-R表示将权限修改应到目录下所有文件和子目录,一般最多的就是chmod -R 755 1.txt
既然文件跟用户息息相关,就需要查看当前是那个用户在操作,这个可以whoami来查看,而单独的who是查看当前有哪些用户登录到了本机,如果用户不对,就可以用su切换用户 su - root,将用户和操作环境一起切到了root下
接下来就是查看进程,ps命令用来列出系统中当前运行的那些进程,我们最常用的就是ps -ef|grep zook 查找zookeeper进行,ps也有很多参数,介绍两个个人觉得比较实用的,一个是ps -l,将目前属于您自己这次登入的 PID 与相关信息列示出来
[root@localhost test6]# ps -l
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
4 S 0 17398 17394 0 75 0 - 16543 wait pts/0 00:00:00 bash
4 R 0 17469 17398 0 77 0 - 15877 - pts/0 00:00:00 ps
一些字段介绍:
F 代表这个程序的旗标 (flag), 4 代表使用者为 super user
S 代表这个程序的状态 (STAT):D 不可中断 uninterruptible sleep (usually IO)
R 运行 runnable (on run queue)
S 中断 sleeping
T 停止 traced or stopped
Z 僵死 a defunct (”zombie”) process
UID 程序被该 UID 所拥有
PID 就是这个程序的 ID !
PPID 则是其上级父程序的ID
C CPU 使用的资源百分比
ADDR 这个是 kernel function,指出该程序在内存的那个部分。如果是个 running的程序,一般就是 "-"
SZ 使用掉的内存大小
WCHAN 目前这个程序是否正在运作当中,若为 - 表示正在运作
TTY 登入者的终端机位置
TIME 使用掉的 CPU 时间。
CMD 所下达的指令为何
第二个是 ps -u root 显示指定用户的进程信息
[root@localhost test6]# ps -u root
PID TTY TIME CMD
1 ? 00:00:00 init
2 ? 00:00:01 migration/0
3 ? 00:00:00 ksoftirqd/0
查看进程状态,如果不对需要将进行杀死,就可以用kill命令,用的最多的就是kill -9 PID将一个进程强制杀死,此处注意当要杀死某一个pid时应该用的是kill而不是pkill,我最近就犯了这个错误,查看到进程后先用pkill -9 pid后再查看,发现进程还在,用kill就可以了,因为pkill和killall命令用于杀死指定名字的进程,杀死同名的进程,后面加进程名。
在测试中我们还经常需要查看日志,最后再说几个查看日志的,一般用的是cat和tail命令
cat filename一次显示所有的文件内容,也可以一次查看多个文件的内容,譬如cat /etc/fstab /etc/profilede,cat -b /etc/profile查看/etc/目录下的profile内容,并且对非空白行进行编号,cat -n /etc/profile则是对/etc目录中的profile的所有的行(包括空白行)进行编号输出显示。cat也可以对文件进行编辑,这边就不做介绍,下次说到相关的时候才提
tail 可以用来查看最新的日志内容,它显示最后的文件内容,当内容有变动时会实时更新,一般用的比较多的参数是-c<数目> 显示的字节数和-n<行数> 显示行数。