目录
安装程序方法
一般来说linux系统基本上分两大类:cat /etc/issue查看linux系统版本
RedHat系列:Redhat、Centos、Fedora等
Debian(德比恩)系列:Debian、Ubuntu等
RedHat 系列常见的安装包格式 :
1、rpm包,安装rpm包的命令是“rpm -参数”
2、包管理工具 yum
3、支持tar包
Debian系列常见的安装包格式 :
1、deb包,安装deb包的命令是“dpkg -参数”
2、包管理工具 apt-get
3、支持tar包
wget不是安装方式,它是一种下载工具,类似于迅雷
通过HTTP、HTTPS、FTP三个最常见的TCP/IP协议下载,并可以使用HTTP代理,名字是World Wide Web”与“get”的结合。
如果要下载一个软件,可以直接运行:
wget 下载地址, 例如: wget https://nodejs.org/dist/v10.9.0/node-v10.9.0-linux-x64.tar.xz
Linux常用目录
- /bin 所有用户可以使用的可执行文件
- /sbin 新管理员使用的执行文件
- /boot Linux内核映像文件和与引导加载有关的文件
- /dev 设备文件
- /etc 系统配置文件
- /mnt 挂载点,常用于挂载文件系统
- /lib 共享库文件
- /proc 基于内存的文件系统,用于显示内核信息
- /usr/bin 用户命令文件
- /usr/sbin 系统命令文件
- /usr/include C头文件
- /usr/lib 库函数
- /usr/src 源代码目录
Linux常用命令
kill命令
-
kill -n n表示信号编号(signnum),那问题来了,“信号编号”是哪位大神???
-
kill -l(查看linux/unix信号变量)
这么多呀,我们今天先了解用的最多的kill -9(SIGKILL)和kill -15(SIGTERM)
-
kill pid就是kill -15 pid
系统会发送一个SIGTERM的信号给对应的程序。当程序接收到该signal后,将会发生以下的事情
1.程序立刻停止
2.当程序释放相应资源后再停止
3.程序可能仍然继续运行
大部分程序接收到SIGTERM信号后,会先释放自己的资源,然后在停止。但是也有程序可以在接受到信号量后,做一些其他的事情,并且这些事情是可以
配置的。如果程序正在等待IO,可能就不会立马做出相应。也就是说,SIGTERM多半是会被阻塞的、忽略。(附上一张进程状态转换图)
-
kill -9 pid:你不是可以不响应 SIGTERM吗??那好,我给你下一道必杀令,我看你还不乖乖的。
-
kill 和 kill -9 的区别就是:
-
kill 是向对应进程发送TERM信号
-
kill -9 是向对应进程发送KILL信号
Linux用户态和内核态的概念
列出当前文件夹下所有文件夹目录树
- tree -d
查看当前文件夹占多少磁盘空间(du:disk usage)
- du -sh
当前文件夹一级目录占用空间
- du -h -d 1
前文件夹下所有文件以及文件夹占多少磁盘空间
- du -sh *
查看磁盘使用情况(文件系统的使用情况,df --block-size=GB)
- df -h
Linux下查看软件版本
- xxx -V
tar压缩解压缩命令
tar
-c:建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。一般记住解压x也压缩c就行
下面的参数是根据需要在压缩或解压档案时可选的。
-z:有gzip属性的(后缀后gz的文件)
-j:有bz2属性的
-Z:有compress属性的(大写的Z)
-v:显示所有过程
-O:将文件解开到标准输出
下面的参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名
总结
1、*.tar 用 tar -xvf 解压
2、*.gz 用 gzip -d或者gunzip 解压
3、*.tar.gz和*.tgz 用 tar -xzf 解压
4、*.bz2 用 bzip2 -d或者用bunzip2 解压
5、*.tar.bz2用tar -xjf 解压
6、*.Z 用 uncompress 解压
7、*.tar.Z 用tar -xZf 解压
8、*.rar 用 unrar e解压
9、*.zip 用 unzip 解压
grep命令
所有的类linux系统都会提供一个名为grep(global regular expression print,全局正则表达式输出)的搜索工具,命令grep与正则表达式结合使用时,功能会非常强大。
grep -ns "keywords" -r ./
find . -name "*.cpp" |xargs grep test
find . -name "*.h" |xargs grep "#include <my.h>"
scp命令
1.将文件复制到远程 Linux 服务器
scp [option] /toPath/fileName user@server-ip:/fileExistPath/fileName
/toPath/fileName – 这是打算复制到远程主机的源文件,也就是本机文件。
user@server-ip:
– 这是远程系统的用户名和 IP 地址。请注意 IP 地址后面加冒号。
/fileExistPath/fileName – 这是文件将复制到的远程系统上的目标目录。
在下面的示例中,我将logs.tar.gz 复制到远程主机的/root目录下。主机IP为192.168.43.137,用户名为root。
[root@server1 ~]# scp logs.tar.gz root@192.168.43.137:/root
2.将文件从远程系统复制到本地系统
-
$ scp [option] user@server-ip:/fileExistPath/fileName /toPath/fileName
在下面的示例中,我们将文件 /root/passwd
从远程系统复制到本地系统:
[root@server1 ~]# scp root@192.168.43.137:/root/passwd /root/
以下是scp命令常用的几个选项:
-C
这会在复制过程中压缩文件或目录。-P
如果默认 SSH 端口不是 22,则使用此选项指定 SSH 端口。-r
此选项递归复制目录及其内容。-p
保留文件的访问和修改时间。
有关使用 scp
命令的更多选项,可以查看手册,命令是:man scp