Linux基础语法
查阅命令帮助信息
--help
显示 command 命令的帮助信息
--man
显示命令的帮助文档
也可以 man command /-d 快速检索 按n跳下一个
小技巧:
ctrl + shift + = 放大终端窗口的字体显示
ctrl + - 缩小终端窗口的字体显示
自动补全
在敲出 文件 / 目录 / 命令 的前几个字母之后,按下 tab 键
如果输入的没有歧义,系统会自动补全
如果还存在其他 文件 / 目录 / 命令 ,再按一下 tab 键,系统会提示可能存在的命令
小技巧
按 上 / 下 光标键可以在曾经使用过的命令之间来回切换
如果想要退出选择,并且不想执行当前选中的命令,可以按 ctrl + c
ls 常用选项
参数 含义
-a 显示指定目录下所有子目录与文件,包括隐藏文件
-l 以列表方式显示文件的详细信息
-h 配合 -l 以人性化的方式显示文件大小
umask 缺省文件信息
查找文件
执行格式一:whereis command 显示命令的路径
执行格式二:which command 显示路径及使用者所定义的别名
执行格式三:whatis command 显示命令的功能摘要 apropos显示配置文件功能摘要
执行格式四:find search -path -name filename -print
搜寻指定路径下某文件的路径
执行格式五:locate filename
find 命令功能非常强大,通常用来在 特定的目录下 搜索 符合条件的文件
序号 命令 作用
01 find [路径] -name “.py” 查找指定路径下扩展名是 .py 的文件,包括子目录
如果省略路径,表示在当前文件夹下查找
之前学习的通配符,在使用 find 命令时同时可用
演练目标
1.搜索桌面目录下,文件名包含 1 的文件
find -name "1"
1
2.搜索桌面目录下,所有以 .txt 为扩展名的文件
find -name ".txt"
1
3.搜索桌面目录下,以数字 1 开头的文件
find -name "1*"
ls通配符的使用
通配符 含义
- 代表任意个数个字符
? 代表任意一个字符,至少 1 个
[] 表示可以匹配字符组中的任一一个
[abc] 匹配 a、b、c 中的任意一个
[a-f] 匹配从 a 到 f 范围内的的任意一个字符
注意:以 . 开头的文件为隐藏文件,需要用 -a 参数才能显示
目录处理命令
ls 显示目录文件
命令 [-选项] [参数]
例如 ls -la /etc
-a all 显示所有文件 包括隐藏文件 (隐藏文件的主要目的是告诉你这是系统的文件 没事不要动)
-l long 显示长文件也就是显示文件所有信息
-d 查看目录属性
-h human 人性化显示
-i i node 相当于id
-rw-r--r--
文件类型(-二进制文件 d目录 I软链接文件)
rw- r-- r--
u g o
u所有者 g所属组 o其他人
write 写 read 读 execute 执行
mkdir makedirectores 创建空目录
选项 -p 递归创建
语法 mkdir -p /temp/..
cp copy 复制文件或目录
-r 复制目录
-p保留文件属性
cp -rp [原文件目录] [目标文件目录]
touch 创建空文件
touch [文件名]
示例 touch japenchang.av
rm remove 删除文件
-f 强制执行
-r删除目录
示例 rm -rf /temp/japen
mv move 剪切文件改名
mv [原文件目录] [目标文件目录]
more (less) 分页显示文件内容
f或者空格 下一页
b 上一页
Enter 换行
Q或q 退出
more /etc/service
cat (tac 反向列示)显示文件内容
-n 显示行号
cat -n /etc/service
head (tail 显示文件后面几行) 显示文件前面几行
-n 指定行数
head -n 10 /etc/service
cd
cd 是英文单词 change directory 的简写,其功能为更改当前的工作目录,也是用户最常用的命令之一
注意:Linux 所有的 目录 和 文件名 都是大小写敏感的
命令 含义
cd 切换到当前用户的主目录(/home/用户目录)
cd ~ 切换到当前用户的主目录(/home/用户目录)
cd . 保持在当前目录不变
cd .. 切换到上级目录
cd - 可以在最近两次工作目录之间来回切换
gcc 编译命令
gcc -o 指定文件名 文件(gcc -o hello hello.c)
上面 的 -o name 选项是告诉编译器可执行程序的名字,就是后面生成的hello文件,如果你忘记提这个,那么编译器会把程序放在一个名为:a.out 的文件里(a.out的含义是seeember output,即汇编输出)。如果你确信编译了一个程序但又找不到它,别忘了看看有没有a.out文件。
在命令行输入: ./文件名(./hello)
locate 在文件资料库中查找文件
-i 搜索的时候不区分大小写
locate 文件名
grep 在文件中搜索字符串匹配的行并输出
-i 不区分大小写
-v排除指定字符串
grep -iv [指定字符串] [文件]
示例 grep mysql /root/install.log
ln 建立文件或目录的链接
ln source target1 建立source文件(已存在)的硬链接,命名为target
ln -s source target2 建立source文件的符号链接,命名为target2
diff 比较文件(可以是二进制的)或目录的内容
执行格式: diff [-r] name1 name2 (name1、name2同为文件或目录)
diff file1 file2 比较file1与file2的不同处
diff -r dir1 dir2 比较dir1与dir2的不同处
登录管理员用户
第一次登陆的时候需要设置管理员密码
sudo passwd root
登入管理员状态 sudo -s 然后输入密码
apt install gcc 安装gcc
useradd 添加用户
查看系统中的使用者
执行格式:
who //粗略
w //详细
创建新用户
useradd -m 用户名
//在root权限下直接使用useradd只是创建了一个用户名它并没有在
/home目录下创建同名文件夹,也没有创建密码,因此利用这个用户登录系统,
是登录不了的,为了避免这样的情况出现,可以用 (useradd -m +用户名)的方式创建,
它会在/home目录下创建同名文件夹,然后利用( passwd + 用户名)
为指定的用户名设置密码。
passwd 用户名 //设置密码
可以直接利用adduser创建新用户(adduser +用户名)这样在/home目录下会自动创建同名文件夹
userdel 删除用户
-r 删除用户留在系统上的文件
userdel -r 用户名
su 切换用户
su 用户名
sudo passwd root 重新设置root 用户密码
groups 查看用户所在组名称
groups
chgrp 改变文件或目录的组拥有权
chgrp 组名 文件名 将文件改为某组所有
chgrp -R image dir1 将目录dir1及其下所有文件和子目录,改为image群组

浙公网安备 33010602011771号