一
- 路径
绝对路径:cd /home/python
相对路径:cd Downloads
. 表示:当前那路径
..表示:当前路径的上一层
../.. 表示:当前路径的上二层
没有...或者以上的
ls:
ls 查看当前路径下的文件以及文件夹的名字
ls /bin 表示:查看根目录下的bin文件夹下的东西
ls Documents 表示:查看当前路径下的Documents文件夹下的所有东西
ls *: * 表示任意多个字符,也可以没有
? 表示一个字符,一定有1个,不能没有
[xn] 表示:中括号中的任意一个字符
[abcdef]可以写成[a-f]:表示 从a到f之间的任意一个字符
-a 隐藏文件
-l 列表显示风格
-h 配合-l 显示一个合理的大小单位cd :
cd Desktop 进入到Desktop这个文件夹
cd 文件夹的名字
cd .. 跳转到当前路径的上一层
cd - 跳转到上一次所在的路径(类似电视机遥控器中的回看)
cd ~ 跳转到当前用户的家目录(/home/python)pwd:显示当前操作的路径(绝对路径 /aaa/bb/cc)
clear:清屏
tab键:用来自动补全
touch:创建一个文件,linux中没有后缀的说法,所有文件名自定义
重定向:
ls > test.txt 表示:把本来显示在终端上的信息写入到test.txt文件中
>> 和 > 的区别是:>> 是在源文件的末尾添加,而> 先清空然后再添加gedit haha.txt 用gedit编辑器打开haha.txt文件
more:
more test.txt 如果test.txt文件的内容如果很多,那么就用分屏的方式显示
ls -alh | more 先把ls -alh显示的内容存放到 管道|中,然后more从管道中去数据,然后分屏显示mkdir:创建文件夹
mkdir a 在当前路径下创建a文件夹
mkdir A/B/C 不能创建,,,需要添加-ptree:以目录树的方式显示 文件夹结构
rmdir: 删除空文件夹
rm:
rm haha.txt 删除一个普通文件
rm 文件夹 会有提示,要删除的东西是个文件夹,,,,如果真的要删除可以添加 -r(递归删除文件夹里面的所有东西)ln -s 源文件 链接文件 表示:软连接
ln 源文件 链接文件 表示:硬链接
注意硬链接数量为1时,才会真正删除数据,否则不会
-
cat
- 查看文件的内容
- 合并多个文件 需要和 重定向>配合
cat 1.txt 2.txt > 3.txt
grep :从指定的文件中搜索需要的内容
-n:显示行号
-i:不区分大小写
-v:取反,即不包含需要的内容的行-
作业:
有一个文件(内容自定),现在需要把以字母a开头的所有内容和字母b结尾的所有内容存放到一个新文件result.txt中
例如:
源文件为 test.txt,内容如下:
sdfisdbbbb
abcdefksjdfkjskdfksdj
akksjdfkjskdfj0000
kjskdfjaaksjdfkjsdkfaaa
ijijsdfjsdbbbbbb12
bksjdkfjsdja
kajsdkfjaksb
ksjdkfkasdbbbbb执行完之后的结果为:
abcdefksjdfkjskdfksdj
akksjdfkjskdfj0000
sdfisdbbbb
kajsdkfjaksb
ksjdkfkasdbbbbb
查找文件:
find 路径 -name '.t?t'
通配符,注意点:
[a-zA-Z0-9].txt复制文件:
cp a b 将a文件夹整体复制到b文件夹下
cp a/* b 将a文件夹下的所有内容赋值到b文件夹下剪切文件:
mv a b 将a文件夹整体移动(剪切)到b文件夹下tar -cvf xxx.tar * 打包
gzip xxx.tar 压缩
gzip -d xxx.tar.gz
tar -xvf xxx.tar
常见的压缩解压方式:
tar -zcvf xxx.tar.gz *
tar -zxvf xxx.tar.gz
tar -jcvf xxx.tar.bz2 *
tar -jxvf xxx.tar.bz2
linux:多用户多任务的OS
ifconfig :查看ip地址
WINDOWS中使用ipconfigping:
ping 192.168.17.76 测试网络连接是否正常
ssh:远程登录
ssh python@192.168.17.76
ssh 用户名@ipwhoami:查看当前用户名
who:查看当前登录的用户信息
exit:退出登录
useradd 新的用户名 -m -d /home/新用户名 -g 组名
passwd 用户名
su 需要切换的用户名
su - 需要切换的用户名, 切换用户后,还会主动跳转到该用户的家目录
python---->laowang----->python
sudo 当需要超级管理员的权限时需要添加,并且在命令行的最前面,后面需要空格
sudo passwd laowangsudo -s 直接切换到root用户
groupadd YYY 添加一个YYY用户组
groupdel YYY 删除一个组,,,,注意需要sudo
cat /etc/group
groups laowang表示:查看laowang所属的所有用户组
usermod -g YYY laowang 把老王添加到YYY组里面
usermod -a -G XXX laowang 把老王添加到XXX组里面
-g 和 -G,-g指定的是默认的组useradd创建的新用户没有sudo,或者切换到root的权限,需要把这个用户添加到adm、sudo组里面才可以
-
chmod 修改文件的权限
u:拥有者
g:同组者
o:其他人
a:所有,即u、g、o+ 添加权限
- 去除权限
= 设定权限r:读------>对应的数字是4
w:写------>对应的数字是2
x:执行------>对应的数字是1 chmod 777 文件夹,只会修改文件夹的权限为777 ,不会修改里面文件的权限
-R 会修改文件夹里面所有的文件、文件夹的权限(递归)
了解:mount 挂载命令
-
vi:
从命令模式---》编辑模式:i、a、o、I、A、O
从编辑模式----》命令模式:ESC
从命令模式----》末行模式:输入一个冒号,即shit+;
末行模式:
w保存
q退出
!强制常用的:
wq保存退出,等价于 x(小写的x),,,,还等价于在命令模式 shit+2个z
q!不保存退出-
命令模式:
hjkl控制上下作用
M中间位置
L当前屏幕的最后一行
yy 复制,8yy:表示从当前光标所在的行开始复制8行
p 粘贴
dd 剪切,8dd:表示从当前光标所在的行开始剪切8行u 撤销
ctl+r 反撤销G 调到最后1行
15G 表示跳转到第15行
1G表示跳转到第1行gg 跳转到第1行
二
1. 软件安装
(1). yum安装(多)
yum install -y 包名 中间一路yes
yum remove -y 包名
可以只下载安装包,不安装
yum install -y --downloadonly --downloaddir=./ wget
下载就是.rpm的包。
(2). 不论你用的是yum还是用的rpm安装,其实安装的都是rpm包。在linux里面,安装软件的时候,不仅仅是安装这么一个软件,与之对应的要按照很多的依赖软件
a ==》 b===》c==》d
如果使用rpm安装,你要知道软件依赖关系才能安装,但是使用yum的话,不用知道依赖关系,yum自动为你解决
比如 yum install -y --downloadonly --downloaddir=./ vim
包含vim的包以及vim依赖的包,全部下载下来之后,估计10个包,这10个都是rpm,请问先装哪个后装哪个。
yum install -y vim 依赖关系自动解决
-ivh :安装 rpm -ivh 包.rpm
-e :卸载 rpm -e wget
-ql : 列出包安装路径 rpm -ql wget
-qi : 列出指定包的详细信息 rpm -qi wget
(3). 编译安装(多)
相对来说,编译安装是需要编译源码的,安装的软件更加适合你的电脑,你的软硬件环境,更加的稳定,相比较yum来说稳定
编译安装3个步骤:
配置
./configure --prefix=你安装路径 --以及其它参数
编译
linux里面的软件都是使用c、c++写的,所以你得有编译器
gcc gcc-c++
yum install -y gcc gcc-c++
make
安装
make install
走完一步之后,可以执行一个指令 echo $? ,如果返回0,代表上面指令执行成功,如果返回其它,说明执行失败
指令可以连写: make && make install
安装ntfs-3g
安装python
2. 服务和进程相关指令
linux的启动等级,打开这个文件 vi /etc/inittab
0 : 关机等级
1 : 单用户模式
2 : 多用户的无网络模式
3 : 多用户模式,有网络
4 : 保留模式
5 : 界面模式
6 : 重启模式
切换等级 init 0 init 1 init 6
查看当前等级 runlevel who -r
whoami : 我是谁,查看当前用户
查看随开机启动的服务
chkconfig --list
赵灵儿
随开机启动的服务,我们给他们起了一个非常好听的名字,守护进程(daemon)
sshd httpd mysqld 其实就是一个随机开机启动的服务
开启、关闭服务
要有控制开启、关闭服务的脚本,比如iptables(防火墙)
/etc/init.d/iptables start | stop | restart
/etc/init.d/network start | stop | restart
经常找脚本,太不方便了,将服务脚本放到 /etc/init.d ,如果支持服务模式,那么就可以使用如下指令开启和关闭
service iptables start | stop | restart
service network start | stop | restart
一般情况,安装服务的时候,控制服务的脚本在安装包就有,但是有的没有,比如nginx没有
自己按照的服务,你就可以将脚本放到 /etc/init.d 里面,然后通过service控制它的开启和关闭 service nginx start
自己按照的服务随开机启动
chkconfig nginx on 默认设置的等级为2345
chkconfig nginx off
还得给脚本权限,权限一般设置为755
通过chkconfig --list 查看有没有配置成功
进程相关指令
top : 实时查看系统的运行情况
w :查看系统的当前用户的链接情况
free : -h 内存的使用情况
ps : 查看进程相关信息
ps -ef | grep ssh
ps aux | grep ssh
kill : 杀死一个进程
kill -9 进程id
netstat -lnp : 查看网络和端口使用情况
netstat -lnp | grep 80
3. shell简介(了解一下)
shell编程
4. ftp服务搭建
5. nfs搭建
6. nginx服务搭建
7. 各系统指令区别总结
需要执行的下载指令有
yum install -y gcc gcc-c++
yum install -y zlib*
yum install -y nfs-utils
yum install -y gcc openssl-devel perl
yum install -y gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel