【Linux基础】Linux基础命令行学习笔记

时间:2021-05-12 16:34:13

绝对路径: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 不能创建,,,需要添加-p

tree:以目录树的方式显示 文件夹结构

rmdir: 删除空文件夹

rm:
rm haha.txt 删除一个普通文件
rm 文件夹 会有提示,要删除的东西是个文件夹,,,,如果真的要删除可以添加 -r(递归删除文件夹里面的所有东西)

ln -s 源文件 链接文件 表示:软连接
ln 源文件 链接文件 表示:硬链接,,,注意硬链接数量为1时,才会真正删除数据,否则不会

cat 1. 查看文件的内容
2. 合并多个文件 需要和 重定向>配合

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文件夹下

B----字节
K---->千字节 1024B
M---->兆字节 1024K
G
T
p

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中使用ipconfig

ping:

ping 192.168.17.76 测试网络连接是否正常

ssh:远程登录

ssh python@192.168.17.76
ssh 用户名@ip

whoami:查看当前用户名

who:查看当前登录的用户信息

exit:退出登录

useradd 新的用户名 -m -d /home/新用户名 -g 组名

passwd 用户名

su 需要切换的用户名
su - 需要切换的用户名, 切换用户后,还会主动跳转到该用户的家目录

python---->laowang----->python

sudo 当需要超级管理员的权限时需要添加,并且在命令行的最前面,后面需要空格
sudo passwd laowang

sudo -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行

云盘资料:http://pan.baidu.com/s/1jIR2ir0