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群组

posted @ 2021-05-29 21:27  zzMark  阅读(348)  评论(0)    收藏  举报