当前位置: 首页 > news >正文

ubuntu学习day1

linux常用命令

1. 用户相关

1.1 切换用户

su root #切换到root用户
su user #切换到普通用户

sudo能赋予普通用户管理者权限,一般不要直接使用root用户进行操作。

1.2 添加用户

useradd  用户名
useradd user1 #添加了用户名为user1的用户

但在ubuntu中想要创建普通用户带自己的目录需要加上-m,如果创建的普通用户能够进行正常工作还需要给它添加正常功能的解析器。-s+解析器地址

sudo useradd -m daozhang -s /bin/bash 

1.3 设置密码

passwd 用户名

另需注意,只有root用户才可以给其他用户设置简单密码,否则普通用户给自己和其他用户配置密码时只能配置复杂密码。

1.4 删除用户

userdel 用户名

注:删除用户后,其家目录并不会被删除,如果要删除目录,需要 userdel –r 用户名

2. 目录和文件的操作

2.1 查看文件或目录

ls+ [选项] [目录或文件]
ls -a显示指定目录下所有子目录与文件(包括隐藏文件)。

ls -a /root/home #显示/root/home下的所有文件

ls -l以长格式显示文件和目录的详细信息,包括权限、所有者、大小、修改时间等。

ls -lh #  -h  与   -l   一起使用时,以更易读的格式显示文件大小(如 KB、MB、GB)。

-t :按修改时间排序,最新的文件或目录排在前面。
-S :按文件大小排序,最大的文件或目录排在前面。
-i :显示文件的 inode 号。
-G :在输出中使用颜色来区分文件类型(默认情况下, ls 通常会自动使用颜色)
另外在ls -l中开头是由 10 个字母构成的字符串,其中第一个字符表示文件类型,它可以是下列类型之一:

字符文件类型
-普通文件
d目录
l符号链接
b块设备文件
c字符设备文件
p命名管道
ssocket 文件

后面的 9 个字符表示文件的访问权限,分为 3 组,每组 3位。第一组表示文件创建者的权限,第二组表示同组用户的权限,第三组表示其他用户的权限。每一组的三个字符分别表示对文件的读、写、执行权限。各权限如下:r(读)、w(写)、x(执行)、_(没有设置权限)

2.2 改变工作目录

cd+目录名
cd .. 到父目录
cd / 到根目录
cd ~到用户主目录下~ 与直接执行 cd 效果一样
cd – 到上一次目录

2.3 显示当前工作目录

pwd 显示用户当前所在的目录。

2.4 创建目录

mkdir +[文件名]

2.5 删除目录

rmdir+[文件名]
如果使用该命令删除一个非空的目录,则删除失败。

2.6 拷贝文件

cp +[原文件名]+[拷贝后新文件名](若拷贝到其他目录则是[目录下的新文件名])

cp file1 fil2 #拷贝file1并命名为file2
cp file1 dir/file3 #拷贝file1到dir目录下并命名为file3

-f 若目标目录中存在与源文件同名的文件,则直接覆盖,不提示 。
-i -f 相反,当目标文件中存在于源文件同名的文件,copy时系统会提示是否进行覆盖。
-r 如果要拷贝的是一个目录,此时将同时拷贝该目录下的子目录和文件。

2.7 移动文件或目录

mv +[选项]+ 源文件或目录 +目标文件或目录
移动单一文件

mv file.txt /path/to/destination/ #将 file.txt 移动到 /path/to/destination/ 目录下。

移动多个文件

mv file1.txt file2.txt dir1/ dir2/ /target_directory/ #移动多个文件和目录到目标目录。

-i 交互模式(覆盖前询问确认)
-f 强制覆盖(不询问,直接覆盖)
-n禁止覆盖(如果目标已存在,不执行移动)

2.8 删除文件或目录

rm +[选项] +文件或目录
在 linux 中创建文件很容易,系统中随时会有文件变得过时且毫无用处。用户可以用 rm 命令将其删除。该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。对于链接文件,只是删除了链接,原有文件均保持不变。如果删除时没有-r 选项则不会删出目录。
-f 删除过程中不会给出提示。
-i 删除过程中会给出交互式提示。
-r 如果删除的是一个目录,则将该目录下的目录及子目录均删除掉。

2.9 显示目录树形结构

在 ubuntu 需要执行 sudo apt-get install tree 进行安装,以树状图列出目录的内容。

.
├── directory1
│   ├── file1.txt
│   └── file2.txt
├── directory2
│   └── subdirectory
│       └── file3.txt
└── file4.txt

-a 显示所有文件和目录。
-h显示子目录大小。
-C 在文件和目录清单加上色彩,便于区分各种类型。
-d 显示目录名称而非内容。
-D 列出文件或目录的更改时间。

2.10 改变目录或文件的权限

chmod +[选项] +模式文件或目录
chmod 命令是非常重要的,用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。

权限分类权限分为三种类型:

  1. 读权限(r):允许读取文件内容或浏览目录。
  2. 写权限(w):允许修改文件内容或在目录中创建/删除文件。
  3. 执行权限(x):允许运行文件或进入目录。

权限还分为三类用户:

  1. 所有者(u):文件或目录的所有者。
  2. 所属组(g):文件或目录所属用户组的成员。
  3. 其他用户(o):除了所有者和所属组成员之外的其他用户。
  • 文字设定法
    添加权限
chmod u+x 文件名 #为文件所有者添加执行权限。

移除权限

chmod o-w 文件名 # 移除其他用户的写权限。

设置权限

chmod g=rw 文件名 #将所属组的权限设置为读写。

同时操作多个用户类别

chmod u+x,g+rx,o-r 文件名 #为所有者添加执行权限,为所属组添加读执行权限,移除其他用户的读权限。
  • 八进制模式八进制模式使用数字来表示权限
    每个权限类型对应一个数字:
    • 读权限(r):4
    • 写权限(w):2
    • 执行权限(x):1
    权限的组合通过数字相加来表示:
    • 读写(rw):4 + 2 = 6
    • 读执行(rx):4 + 1 = 5
    • 读写执行(rwx):4 + 2 + 1 = 7
chmod xyz 文件名  #  x表示所有者的权限,y表示所属组的权限,z表示其他用户的权限。
chmod 755 file1

2.11 文件查找

find +[搜索路径]+ [选项]+ [操作]
-name按文件名(区分大小写)

find /path -name "filename.txt"

-iname按文件名(不区分大小写)

find /path -iname "*.jpg"  # 查找所有 .jpg 或 .JPG 文件

-type按文件类型过滤:

符号文件类型
f普通文件
d目录
l符号链接
find /path -type d  # 查找所有目录

-mtime按修改时间(天):

find /path -mtime +7   # 修改时间超过7天的文件
find /path -mtime -2   # 修改时间在2天内的文件

-a 相当于and,表示只有当所给的条件都满足时,查找条件才满足。
-o 相当于or,表示只要所给的条有一个满足,查找条件就满足。
相当于not,表示查找不满足所给条件的文件。

find . -name "file1" -a -type f #在当前目录及其子目录中查找名为 file1 的普通文件
find . -name "file1" -o -name file2 #在当前目录及其子目录中查找文件名是 file1 或 file2 的文件。
find . ! -name file2  #在当前目录及其子目录中查找所有文件名不是 file2 的文件。

*表示省略一到多个文件名字符
?表示仅剩略一个文件名字符
[]表示填入数字查找该前缀命名的范围。

2.12 列出文件系统的整体磁盘空间使用情况

df+ [选项]+ [文件]
-h以人们易读的 GB、MB、KB 等格式显示,可以直接显示整个磁盘使用情况。

2.13 显示每个文件和目录的磁盘使用空间

du [选项] [文件名]
-h以人们易读的 GB、MB、KB 等格式显示操作发现目录的每一级都显示。

相关文章:

  • RuoYi-Vue升级为https访问-后端安装SSL证书(单台Linux服务器部署)
  • 图论基础理论
  • 低资源需求的大模型训练项目---调研0.5B大语言模型
  • 2025.04.13【Density 2d】| 基因表达数据可视化
  • Linux编程c/c++程序
  • 前端vue 项目px转为rem的自适应解决方案
  • open harmony多模组子系统分析
  • BM25、BGE以及text2vec-base-chinese的区别
  • [dp8_子数组] 乘积为正数的最长子数组长度 | 等差数列划分 | 最长湍流子数组
  • UE5角色状态机中跳跃落地移动衔接问题
  • markdown导出PDF,PDF生成目录
  • goc知识点
  • Symbol
  • C++学习之路,从0到精通的征途:string类的模拟实现
  • 操作系统基础:06 操作系统历史
  • C++ CUDA开发入门
  • VectorBT量化入门系列:第六章 VectorBT实战案例:机器学习预测策略
  • vue3动态路由
  • Cyber Weekly #51
  • C++ 回调函数应用实战:深入理解与高效使用回调函数
  • “十五五”规划编制工作开展网络征求意见活动
  • 林园:茅台一直是稀缺资源,股东比较有信仰,依旧看好白酒市场
  • 河南通报部分未检疫生猪流入:立案查处,涉案猪肉被封存
  • 证监会披露两起操纵市场处罚结果,今年来涉操纵股票罚没金额超7.5亿元
  • 时隔3年,持续近2小时,俄乌在土耳其谈成了什么?
  • 丰富“互换通”产品类型,促进中国金融市场高水平对外开放