linux基础知识和常用命令
简介
http://www.runoob.com/linux/linux-intro.html
终端
- 补齐*[TAB]*
- 任务终止*[CTRL+C]*
向进程发送SIGINT,通知任务终止 - 后台任务*[命令 &]*
wps &
后台运行wps - 输出重定向*[命令 > 文件]*
ping 192.168.41.1 >/dev/null
把ping命令的输出重定向到/dev/null - 管道*[命令1 | 命令2 ]*
前一个命令的标准输出作为后边一个命令标准输入
ls -l | wc -l
计算当前目录下有多少个文件或目录 - 任务挂起*[CTRL+Z]*
挂起后的任务停止执行 - 操作挂起的任务或后台执行的任务
jobs
查看挂起的任务或后台运行的任务fg
命令把它切换为前台任务bg
命令把它切换为一个后台任务
文件系统操作
各个目录的区别
-
/bin 二进制可执行命令
-
/opt 额外安装的可选应用程序包所放置的位置. wps就是装在这里
-
/dev 设备特殊文件
-
/etc 全局系统管理和配置文件 。每个用户又有自己的配置文件目录,在
~/.config
目录。 -
/home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~表示
-
/lib 系统库目录
-
/boot 内核和引导的目录。
-
/sbin 系统管理命令
-
/tmp 临时文件目录
-
/root root用户的家目录
-
/proc 虚拟的目录,是系统内存的映射。可直接访问这个目录来获取系统信息。
-
/var 某些大文件的溢出区,比方说各种服务的日志文件
-
/usr
最庞大的目录,要用到的应用程序和文件几乎都在这个目录。其中包含:
- /usr/bin 众多的应用程序
- /usr/sbin 超级用户的一些管理程序
- /usr/include linux下开发和编译应用程序所需要的头文件
- /usr/lib 系统库目录和第三方库目录
- /usr/local/bin 本地增加的命令
- /usr/local/lib 本地增加的库
相对路径与绝对路径
绝对路径以*/*打头, 其他都是相对路径。
.
和..
是比较特殊的两个相对路径。
软链接
ln -sf 源文件路径 目标链接路径
注意:源文件路径如果是相对路径时,它相对的位置是从目标链接所在路径计算。
命令是什么
命令也是一个普通的可执行程序或者脚本,但它可以在不输入程序完整路径的情况下就能调用到。
终端可识别的命令除去一小部分shell内置命令(如cd), 其他命令都是根据PATH
变量设置的路径搜索的可执行程序。
通过修改PATH
可以增加命令搜索的路径。
增加一个新命令有几种方式
- 把可执行程序所在目录加到
PATH
- 要么直接把该程序拷贝到已经在
PATH
中的路径中去.如/bin/
,/usr/bin
,/usr/local/bin
- 通过别名
alias
来设置,如常用的ll
命令就是ls
命令的一个别名。
遇到一个命令,可以通过man command
或者command --help
来获取相关帮助。
可以通过which
来查找一个命令所在的位置。如which ls
可以发现ls命令在*/bin/ls*
非常常用的命令
ls
列出当前目录下的文件,
-l
列表形式列出
-r
反向排序
ls -al
列出所有,包括隐藏文件
ls -alt
按时间顺序列出所有文件
ls -alS
按大小排序列出所有文件
ll
相当于ls -alF
cd
cd -
回到上一个目录touch
创建一个文件。如果文件已经存在,更新文件的修改时间。mv
移动文件或目录cp -av
复制rm -rf
删除文件或目录pwd
获取当前目录mkdir
rmdir
删除目录cat
读取文件内容tail
读取文件尾部内容,tail -f
可以动态显示文件变化more
和less
大文件读取, less可以上下滚动file
获取文件类型exit
退出du -h -d 1
查看当前目录容量
用户和权限
管理员和普通用户
root 用户在系统内是属于独一无二的超级管理员,拥有至高无上的权限(皇帝)。
普通用户的权限则受到很多限制(平民)。
普通用户只能访问自己的东西,既不能访问其他普通用户的文件,更不能访问root用户的文件。
权限
- 读取® 4
- 写(w) 2
- 执行(x) 1
又根据用户分为拥有者 ,组用户,其他用户,所以一个文件或目录的权限最大是777。
相关命令
-
su root
切换到root用户。 -
sudo ls /root
以其他用户身份执行一条命令。默认以root用户执行 -
chown user ./wps
修改一个文件的拥有者为user. -
chmod 777 ./wps
修改一个文件的权限为777
u,g,o,a
分别代表拥有者,组,其他用户,所有用户
可以只给某个用户增加或削减权限,如
chmod u+x ./wps
给wps文件的拥有者增加可执行权限
chmod o-w ./wps
去掉wps文件的其他用户的可读权限 -
passwd wps
修改wps用户的密码。如果不加参数,就修改当前用户的密码 -
su root
切换到root用户。 -
sudo ls /root
以其他用户身份执行一条命令。默认以root用户执行 -
chown user ./wps
修改一个文件的拥有者为user. -
chmod 777 ./wps
修改一个文件的权限为777
u,g,o,a
分别代表拥有者,组,其他用户,所有用户
可以只给某个用户增加或削减权限,如
chmod u+x ./wps
给wps文件的拥有者增加可执行权限
chmod o-w ./wps
去掉wps文件的其他用户的可读权限 -
passwd wps
修改wps用户的密码。如果不加参数,就修改当前用户的密码
进程管理
进程可以认为是程序执行时的一个实例。可以用pid标识同一个程序的不同实例。每一个进程的pid都不相同.
如何获取一个后台进程
的pid
-
ps -aux
获取当前系统所有运行中的进程 -
ps -aux | grep wps
输出如下USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND z 6744 0.6 0.6 1021176 67908 ? Sl 16:31 1:11 gedit /home/z/Desktop/无标题文档 2
-
pidof wps
根据进程名获取某个程序的pid
如何杀掉一个进程
killall wps
杀掉所有进程名为wps的程序, 程序正常退出, 但有时无法相应。对应信号为TERMkillall -9 wps
杀掉所有进程名为wps的程序,强杀, 程序100%会退出。对应信号为SIGKILLkill 100
杀掉进程id为100的程序kill -9 100
强制杀掉进程id为100的程序
常用命令行工具
获取系统信息
df -h
查看系统硬盘剩余top
类似任物管理器,只能看,杀进程得配合kill
htop
同上,界面更好看一点free -h
获取当前内存使用情况uname -a
获取当前系统内核,架构等信息lsb_release -a
获取操作系统等信息lscpu
列出cpu信息cat /proc/cpuinfo
获取详细的cpu信息nproc
获取当前cpu核心数ifconfig
获取ipping 192.168.41.1
ping命令
关机,重启
halt
关机reboot
重启shutdown
关机init 0
关机,init 6
重启
压缩解压
tar zcvf office6.tar.gz ./office6
压缩*./office6目录为tar.gz格式.
-z
代表gzip*
-j
代表bzip
-J
代表xztar xvf office6.tar.gz
解压一个tar包到当前目录,解压可以不指定压缩格式
增加-C
参数解压到指定目录。
远程操作,拷贝,需要安装openssh-server
ssh user@ip
命令行连接到远程机器scp filename user@ip:path
传输本地文件到远程的path目录,
scp user@ip:path filename
修改参数顺序可以把远程文件传输到本地
scp -r dir user@ip:path
-r
参数可以传输文件夹
查找文件和内容
find . -name "wps"
查找当前目录文件名为filename的文件grep "wps" . -rn
查找当前目录下内容包含wps的文件
其他
nano filename
命令行文本编辑器,简单容易上手xdg-open filename
使用系统关联的程序打开一个文件