Linux基础命令

操作系统:支持软件控制硬件
sudo apt-get update
sudo apt-get upgrade
这两个是更新乌班图下载源的,如果出现无法定位软件的报错,用这两个命令能解决
Linux基本命令:
ls---->显示当前路径下的文件以及文件夹的名字
pwd--->显示当前正在操作的路径
/  根目录,类似于windows中c或者d
/home/python -----> 根路径下的  home文件下的python文件夹
/ 斜杠
\ 反斜杠   \n
| 竖杠
- 横岗
_ 下划线

touch 文件名 ----->创建一个文件
touch 1.txt

cd 路径 ----->跳转到某个路径
cd Desktop --->如果当前路径下有Desktop文件夹,那么就跳转到里面

mkdir 文件夹的名字  ----->创建一个文件夹
mkdir laowang ---->在当前路径下创建一个 laowang文件夹
mkdir c/d/e/f -p  :没有父类文件夹自动创建
  1. tab键 自动补全
cd .. 调到上一层路径
    . 当前路径
cd ../.. 调到上两层
cd ./Desktop 跳转到当前路径下的 Desktop文件夹中
cd - 调到 上一次所在的路径(遥控器的回看)
cd ~ 快速回家 

相对路径:
绝对路径:

clear 清屏幕
ctrl+L  清屏幕

rm 文件或者文件夹的名字
如果是文件夹,那么需要添加-r 选项

rm -r xxx
rm xxx -r 都可以 ,,,
rmdir 删除空文件夹

命令的顺序要求:显示Linux命令,然后在根据这个命令是否需要参数或者选项进行添加,但是选项和参数一般情况下没有先后顺序
shutdown 关机
reboot 
cp :复制 复制文件夹加个-r
mv:移动(剪切)不需要加-r   也可以重命名(名字重复就添加进去不重复就修改)
tree: 以目录树的方式显示 文件结构
history: 查看原代码
--help帮助文档

1、以点开始的为隐藏文件 ls -a 可以查看隐藏文件 ls - h 查看文件大小 ls -l 查看文件
ls -alh   查看文件类型
重定向:ls > 重定向文件名.txt(显示文件到文件中)(文件有内容将覆盖原有内容)
gedit  文件名 或 vim 文件名  查看文件
ls >> 文件名 (将文件内容追加到文件的后面)
cat 一次显示文件全部内容还可以合并
more 看多少显示多少
2、管道: |
例:tree /home/python/ | more  不用保存直接查看
ps aux | grep python  筛选文件
建立链接文件:Ln
3、软链接:
ln -s 本地文件 链接文件
4、硬链接:
ln 本地文件 链接文件
注意:硬链接只能链接文件不能链接文件夹
5、文本搜索:
grep 参数 “查找东西” 来自那个文件
6、查文件:
find ./-name 文件夹 通过文件名字查找(重点)
find ./-name “.txt” 结尾为.txt文件结尾都查找出来
通配符:
?表是有一个  * 可以有多个也可以没有平时    

7、归档管理:
tar -cvf xxx.tar  *.txt  打包所有txt文件到xxx.tar
解包: tar -xvf xxx.tar
8、文件压缩解压:-C(大写字母) 解压到指定目录
gzip xxx.tar
解压: gzip -d xxx.tar.gz
打包并压缩:tar -zcvf xxx.tar.gz *.
解包并解压:tar -zxvf xxx.tar.gz
打包并压缩:tar -jcvf xxx.tar.bz2 *.txt
解包并解压:tar -jxvf xxx.tar.bz2
8、文件权限:
U :拥有者G:同组者 O:其他
r——4,w——2,x——1
chmod 777 文件明称 -R 修改所有权限
777:都可读可写可执行 755  644
suod -s切换用户
ifconfig 查看IP地址
第三天:
02. 组管理 终端命令
提示:创建组 / 删除组 的终端命令都需要通过 sudo 执行
序号 命令 作用
01 groupadd 组名 添加组
02 groupdel 组名 删除组
03 cat /etc/group 确认组信息
04 chgrp -R 组名 文件/目录名 递归修改文件/目录的所属组
提示:
  ● 组信息保存在 /etc/group 文件中
  ● /etc 目录是专门用来保存 系统配置信息 的目录

  ● 在实际应用中,可以预先针对 组 设置好权限,然后 将不同的用户添加到对应的组中,从而不用依次为每一个用户设置权限
演练目标
  1. 在 python 用户的桌面文件夹下创建 Python学习 目录
  2. 新建 dev 组
  3. 将 Python学习 目录的组修改为 dev
03. 用户管理 终端命令
提示:创建用户 / 删除用户 / 修改其他用户密码 的终端命令都需要通过 sudo 执行
3.1 创建用户/设置密码/删除用户
序号 命令 作用 说明
01 useradd -m -g 组 新建用户名 添加新用户 -m 自动建立用户家目录-g 指定用户所在的组,否则会建立一个和同名的组
02 passwd 用户名 设置用户密码 如果是普通用户,直接用 passwd 可以修改自己的账户密码
03 userdel -r 用户名 删除用户 -r 选项会自动删除用户家目录
04 cat /etc/passwd | grep 用户名 确认用户信息 新建用户后,用户信息会保存在 /etc/passwd 文件中
提示:
  ● 创建用户时,如果忘记添加 -m 选项指定新用户的家目录 —— 最简单的方法就是删除用户,重新创建
  ● 创建用户时,默认会创建一个和用户名同名的组名
  ● 用户信息保存在 /etc/passwd 文件中
3.2 查看用户信息
序号 命令 作用
01 id [用户名] 查看用户 UID 和 GID 信息
02 who 查看当前所有登录的用户列表
03 whoami 查看当前登录用户的账户名
passwd 文件
/etc/passwd 文件存放的是用户的信息,由 6 个分号组成的 7 个信息,分别是
  1. 用户名
  2. 密码(x,表示加密的密码)
  3. UID(用户标识)
  4. GID(组标识)
  5. 用户全名或本地帐号
  6. 家目录
  7. 登录使用的 Shell,就是登录之后,使用的终端命令,ubuntu 默认是 dash
usermod
  ● usermod 可以用来设置 用户 的 主组 / 附加组 和 登录 Shell,命令格式如下:
  ● 主组:通常在新建用户时指定,在 etc/passwd 的第 4 列 GID 对应的组
  ● 附加组:在 etc/group 中最后一列表示该组的用户列表,用于指定 用户的附加权限  
提示:设置了用户的附加组之后,需要重新登录才能生效!
# 修改用户的主组(passwd 中的 GID)
usermod -g 组 用户名

# 修改用户的附加组
usermod -G 附加的组名 用户名

# 修改用户登录 Shell
usermod -s /bin/bash 用户名

注意:默认使用 useradd 添加的用户是没有权限使用 sudo 以 root 身份执行命令的,可以使用以下命令,将用户添加到 sudo 附加组中
usermod -G sudo 用户名
cat -n /etc/group | grep python(查看是否具有root权限)

which(重要)
提示
  ● /etc/passwd 是用于保存用户信息的文件
  ● /usr/bin/passwd 是用于修改用户密码的程序
  ● which 命令可以查看执行命令所在位置,例如:
which ls
# 输出
# /bin/ls
which useradd

# 输出
# /usr/sbin/useradd

bin 和 sbin
  ● 在 Linux 中,绝大多数可执行文件都是保存在 /bin/sbin、/usr/bin/usr/sbin
  ● /bin(binary)是二进制执行文件目录,主要用于具体应用
  ● /sbin(system binary)是系统管理员专用的二进制代码存放目录,主要用于系统管理
  ● /usr/bin(user commands for applications)后期安装的一些软件
  ● /usr/sbin(super user commands for applications)超级用户的一些管理程序
提示:
  ● cd 这个终端命令是内置在系统内核中的,没有独立的文件,因此用 which 无法找到 cd 命令的位置
3.3 切换用户
序号 命令 作用 说明
01 su - 用户名 切换用户,并且切换目录 - 可以切换到用户家目录,否则保持位置不变
02 exit 退出当前登录账户 
  ● su 不接用户名,可以切换到 root,但是不推荐使用,因为不安全
  ● exit 示意图如下:


04. 修改文件权限
序号 命令 作用
01 chown 修改拥有者
02 chgrp 修改组
03 chmod 修改权限
  ● 命令格式如下:
# 修改文件|目录的拥有者
chown 用户名 文件名|目录名

# 递归修改文件|目录的组
chgrp -R 组名 文件名|目录名

# 递归修改文件权限
chmod -R 755 文件名|目录名

  ● chmod 在设置权限时,可以简单地使用三个数字分别对应 拥有者 / 组 和 其他 用户的权限
# 直接修改文件|目录的 读|写|执行 权限,但是不能精确到 拥有者|组|其他
chmod +/-rwx 文件名|目录名
系统信息相关命令
  ● 本节内容主要是为了方便通过远程终端维护服务器时,查看服务器上当前 系统日期和时间 / 磁盘空间占用情况 / 程序执行情况
  ● 本小结学习的终端命令基本都是查询命令,通过这些命令对系统资源的使用情况有个了解
目标
  ● 时间和日期
      ○ date
      ○ cal
  ● 磁盘和目录空间
      ○ df
      ○ du
  ● 进程信息
      ○ ps
      ○ top
      ○ kill
01. 时间和日期
序号 命令 作用
01 date 查看系统时间
02 cal calendar 查看日历,-y 选项可以查看一年的日历
02. 磁盘信息
序号 命令 作用
01 df -h disk free 显示磁盘剩余空间
02 du -h [目录名] disk usage 显示目录下的文件大小
  ● 选项说明
参数 含义
-h 以人性化的方式显示文件大小
03. 进程信息
  ● 所谓 进程,通俗地说就是 当前正在执行的一个程序
序号 命令 作用
01 ps aux process status 查看进程的详细状况
02 top 或htop 动态显示运行中的进程并且排序
03 kill [-9] 进程代号 终止指定代号的进程,-9 表示强行终止
ps 默认只会显示当前用户通过终端启动的应用程序
  ● ps 选项说明功能
选项 含义
a 显示终端上的所有进程,包括其他用户的进程
u 显示进程的详细状态
x 显示没有控制终端的进程
提示:使用 kill 命令时,最好只终止由当前用户开启的进程,而不要终止 root 身份开启的进程,否则可能导致系统崩溃
  ● 要退出 top 可以直接输入 q



你可能感兴趣的:(Linux基础命令)