Linux命令简介 · Specter’s Blog

这些是我自己在学习过程中,遇到的一些常用到的命令。有些可能不太正确,多多见谅。

linux简介

在linux中任何内容都是文件

硬件设备文件名 /dev/… 第一个’/‘代表的是根目录,dev目录下保存的都是硬件设备文件名

根目录下的bin和sbin,usr目录下的bin和sbin这四个目录都是用来保存系统命令的

/etc/ 目录下一般都是配置文件

/lib/ 目录下一般都是Linux的函数库

proc和sys 目录不应该 操作,这两个目录保存的是内存的过载点

所以不应该在Linux下任何一个文件夹内乱写东西,可以在家目录root或home,以及temp目录下随便放内容

uname -a : 查看系统信息

直接输入某应用程序的名字会将其打开,[email protected]:~# firefox,[email protected]:~# firefox & 使其在后台打开

[email protected]:~# firefox www.baidu.com 则会打开百度

文件和目录的管理

打开文件夹的方法使用:

cd 目录 —–进入某目录,
cd ..进入上级目录,cd / 进入根目录,
ll —-查看文件夹里的文件
pwd 显示当前目录

打开文件的方法:

编辑文件用 vi 文件名 或者 vim 文件名。 vi是Linux终端下或控制台下常用的编辑器,
基本的操作方式为:vi /路径/文件名

例如,vi /etc/fstab表示显示/etc/fstab文件的内容。使用键盘上的Page Up和Page Down键可以上下翻页;按下Insert键,可以见到窗口左下角有“Insert”字样,表示当前为插入编辑状态,这时从键盘输入的内容将插入到光标位置;再按下Insert键,左下角将有“Replace”字样,表示当前为替换编辑状态,这时从键盘输入的内容将替换光标位置的内容。编辑完内容后,按下Esc键,并输入“:wq”,然后回车就可以保存退出。
  
如果不想保存而直接退出,则按下Esc键后,输入“:q!”,然后回车即可。“wq”表示Write和Quit,即保存退出;“q!”表示忽略修改强行退出。

查看文件n内容用 cat 文件名 或 less 文件名

ls:

查看当前目录下的目录或文件 ls -a 查看所有文件,包括隐藏文件

ls -l查看所有目录和权限等各种属性 drwxr-xr-x 2 root1 root1 4096 3月 12 23:14 Templates 查到的权限像这样, d 表示的是这是一个目录

零散的文件操作

ls > currentdir 输出重定向,ls > currentdir 命令 会把当前目录放到currentfir中,用cat currentdir可以查看(会覆盖一些文件,慎用ls currentdir较好)

cat:查看文件内容,cat << aa 输入重定向, 碰到aa会结束(aa为人已字符) cat -n 文件 显示文件行号

more: 查看文件内容,会把文件分页,方便查看,也可以cat|more

less: 显示文本文件的内容 可以移动光标,在文件底部,输入q会退出

grep :grep aa 文件 , 在文件中查找含有aa的部分

locate :查找系统中的一些目录或文件 locate a 查找系统中含有a的目录或文件

whereis: whereis+文件、程序、命令 查找出文件、程序、或命令的存放位置和相关信息

which: which+文件、程序、命令 查看文件、程序、命令存放在那个目录中

who: 查看哪些用户登录,以及其登陆的控制台, whoami 可以显示当前登录的用户

touch:创建一个文件

mkdir:创建一个目录

mv:移动一个文件或者目录到连一个目录下 mv -b 可以避免同名文件被覆盖,原文件后会有一个~

mv a(文件) b(文件)把a重命名为b

rmdir:删除一个空目录

cp:复制一个文件到一个目录下

rm:删除文件 ,rm -i 询问是否删除,rm -r 删除任何文件或目录

ln: ln aa bb 给aa创建一个硬链接,bb是一个实实在在的文件,但如果改变aa,bb也会改变。但如果删除aa,bb还会存在。

ln -s aa bb 给aa创建一个符号链接文件bb
ln -s aa/ bb 给aa目录创建一个符号链接文件bb (链接文件类似一个文件的快捷方式,不是一个真正的文件,-s就是为了指明该文件是链接文件)

| : 管道符号(竖线),可以将一条命令的输出连接到另一条命令的输入 a|b a的输出作为b的输入

grep:过滤, ls | grep a 在ls输出的目录下 过滤出含有a字段的目录

权限问题

chown:
更改文件的所有权:sudo chown root1 aa
drwxr-xr-x 2 root root 4096 3月 13 20:45 aa 会变成 drwxr-xr-x 2 root1 root 4096 3月 13 20:45 aa

更改目录及目录下的所有文件 sudo chown -R root1 b

chmod: 改变一个文件的权限 文件属主用u表示,其他人用o表示,所有人用a表示,
|| r表示读,w表示写,x表示执行

chmod u+x aa 使aa文件给文件属主增加执行权限

chmod u-x aa 代表取消该权限

rwx 表示该目录对创建者来说拥有读,写和执行的权限,
r-x 表示文件所有者所在组的权限读和执行
第二个r-x 表示其他人的权限 2 表示文件数目
第一个 root1 :用户 第二个 root1: 用户组
4096 是文件大小 06-29 14:30 是创建时间 test 文件名

用户与组管理

history:可以查看 使用过的系统命令

su 命令用于切换当前用户身份到其他用户身份,变更时须输入所要变更的用户帐号与密码。

sudo useradd 新用户名 –》增加新用户 sudo passwd 新用户名 增加密码

sudo useradd -m 新用户名 ,可以添加新用户,sudo passwd 用户名 增加 -m 参数,可以把该用户添加到主目录下,用于开机时的登录,如果不加-m,则不能登录

sudo userdel 用户名 可以删除某用户

sudo userdel -r 用户名 可以把用户机器主目录删除

sudo id 用户名 查看该用户的信息 直接输入id 可以查看目前登陆的用户信息

sudo cat /etc/sudoers 查看etc目录下的配置

sudo updatedb : 刷新数据库

sudo chmod 600 ××× (只有所有者有读和写的权限)

sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)

sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)

sudo chmod 666 ××× (每个人都有读和写的权限)

sudo chmod 777 ××× (每个人都有读和写以及执行的权限)

/etc/group 记录所有组的名字,及组的成员列表,sudo cat group 可以查看,sudo用来提升权限

/etc/passwd 用户的关键信息存放在 /etc/passwd文件中 系统中每一个合法用户 对应一行记录

如 root1:x:1000:1000:root1,,,:/home/root1:/bin/bash

(1)root1是用户名,(2)x代表密码(口令),被保存在shadow中,(3)1000为id符号,(4)属于1000组,(5)root1,(6)用户主目录为/home/root1,(7)表明用户的登录shell

上面提到的密码(口令),可由sudo cat shadow来查看,但无法直接看到密码,MD5加密的,34个字符,标志$1$

进程管理

ps:查看当前所有进程

psaux:显示所有进程以及与进程相关的信息

pslax:提供父进程和子进程及其优先级

top: 动态显示进程状态,按q退出

lsof+文件名:查看哪个进程在占用某文件

kill:结束某进程 , kill+进程号about:startpage