【Linux命令(一):知识基础】


kiss kiss~~)

Linux命令

linux命令的优点

  1. 一切都是一个文件。(包括硬件,文本,二进制,源代码)
  2. 系统中拥有小型,单一用途的程序。(一个程序只负责做好自己的本职工作)
  3. 当遇到复杂任务,通过不同功能用途的程序组合起来完成。 轻量级,一台服务 dhcp ip 数据库服务 网页
  4. 避免令人困惑的用户界面就是没有复杂的图形界面。
  5. 连配置文件都存储在文本中,方便增删改查。
  6. 不在乎后缀名,有没有都无所谓,不是通过后缀名来定义文件的类型。
  7. 强大的脚本和自动化能力:Linux命令提供了广泛的脚本和自动化支持。

总的来说,Linux命令具有强大的功能和灵活性,可以满足各种系统管理和开发需求。

Linux 命令精讲

相信大家都了解Windows,windows是面向用户的系统,图形化界面操作,点点对话框便可以完成操作,那linux是已系统精简出名的,所以不是面向用户的操作系统,有一定的操作难度,具体可以看[不甘平凡※]的这篇“Linux 命令精讲——Linux命令概述(一)

Linux命令基础知识

linux常用文件夹
/:根目录
/boot: 系统启动的文件
/dev: 放硬件设备,类似硬盘
/etc: 放系统的默认配置
(/var/)log:日志文件
/opt: 空的文件,放第三方软件
/tmp: 临时文件
拓展:
/home: 客户主目录的基点,例如uesr的主目录是/home/user(~user)
/root: 超级用户的主目录
/sbin: 超级管理员使用的二进制命令
/bin: 普通用户二进制命令
/proc: 进程
/sys: 系统
/usr: 小根

linux常用命令
#($) ls:查看文件
#cd:切换目录 (例如#cd …/…/aa/ee #cd /date/aa/cc )
#cp:复制粘贴文件
#mkdir:创建目录
#tar:打包文件
#cat:查看文件内容
#vim:新建文件
#mount 挂载
#tail -f:命令的实时监视模式,可以按下键盘上的 Ctrl + C 组合键来终止命令的执行。

【root@localhost ~】
root: 当前登录用户
localhost: 当前主机名
~当前用户的家目录,/当前所在根目录
#超级用户提示符,$普通用户提示符

rw- r-- r–. 权限 读r 写w 执行x
rwx 文件拥有者 rwx 拥有组 rwx 其他人 read 读 - write 写

通配符:匹配文件的名字

#关机命令:
1、halt #立刻关机
2、poweroff #立刻关机
3、shutdown -h now #立刻关机(root用户使用)
4、shutdown -h 10 #10分钟后自动关机
#重启:
reboot
init6
shutdown -r now

#修改语言
修改LANG变量实现中文语言提示
[root@localhost ~]# LANG=zh_CN.UTF-8
[root@localhost ~]# echo $LANG
zh_CN.UTF-8
[root@localhost ~]# LANG=en_US.UTF-8
[root@localhost ~]# echo $LANG
en_US.UTF-8

#修改颜色
[root@localhost ~]#vim .bashrc
PS1=‘[\e[1;34m][\u@\h \W]$[\e[0m]’

shell

什么是shell(壳),怎么在硬件和用户之间翻译?

shell是Linux系统中后台运行的一种特殊程序也可以理解成一种特殊的软件,提供了用户与内核进行交互操作的一种接口。

Bash 是 Linux 操作系统中默认使用的 Shell 程序,文件位于/bin/bash。

[root@localhost ~]# echo $SHELL //显示当前shell
/bin/bash
[root@localhost ~]# cat /etc/shells //显示当前系统所有使用的shell
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh

[root@localhost mnt]# sh 切换shell环境
sh-4.2#

切换到 Bourne Shell 环境,你将处于一个新的 Shell 会话中,可能需要重新加载和设置你的环境变量、别名等配置。此外,不同的用户可能有不同的 Shell 偏好和需求,因此切换 Shell 环境是根据具体情况和需要来决定的。

shell与内、外部命令☆

内部命令外部命令
集成于Shell解释器程序内部的一些特殊指令,也称为内建(Built-in)指令Linux系统中能够完成特定功能的脚本文件或二进制程序
属于Shell的一部分属于Shell解释器程序之外的命令
没有单独对应的系统文件每个外部命令对应了系统中的一个文件
自动载入内存,可以直接使用必须知道其对应的文件位置,由Shell加载后才能执行

此引用为CSDN博主「不甘平凡※」的原创文章
————————————————
内部命令:是指集成于 Shell 解释器程序(如 Bash)内部的一些特殊指令,也称为内建(Built-in)指令。内部命令属于 Shell 的一部分,所以没有单独对应的系统文件,只要: Shell 解释器被运行,内部指令也就自动载入内存了,用户可以直接使用。内部命令无须从硬盘中重新读取文件,因此执行效率较高。
外部命令:是指 Linux 操作系统中能够完成特定功能的脚本文件或二进制程序,每个外部命令对应系统中的一个文件,是属于 Shell 解释器程序之外的命令,所以称为外部命令。Linux 操作系统必须知道外部命令对应的文件位置,才能够由 Shell加载并执行。
————————————————
原文链接:https://blog.csdn.net/LS19990712/article/details/101685377

help命令可以查看内部命令

[root@localhost opt]# help
GNU bash, 版本 4.2.46(2)-release (x86_64-redhat-linux-gnu)
这些 shell 命令是内部定义的。请输入 'help' 以获取一个列表
输入 'help 名称' 以得到有关函数名称’的更多信息.
使用 info bash来获得关于 shell 的更多一般性信息
使用 'man -k'info' 来获取不在列表中的命令的更多信息`.

名称旁边的星号 (*) 意味着该命令被禁用.

可以使用 type 命令来区分内外部命令
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
开启或关闭内部命令
关闭:enable -n 内部命令
开启:enable 内部命令

[root@localhost opt]# enable -n cd
[root@localhost opt]# cd /mnt/
[root@localhost opt]#

hash
缓存空间

hash -d 加缓存里的命令 单独删除
hash -r 删除所有

将缓存的外部命令移到其他默认的目录中,无法再次使用,需要清掉hash值之后 ,才可以继续使用。

在这里插入图片描述

  • (判断是否是内部命令 ,是直接执行, 不是 去看hash缓存表 如果hash 表有直接执行,有 但是找不到 报错如果是第一次执行的外部命令,会去规定的文件夹找命令,如果没有会报错)
  • 绝对路径>别名>内部>hash>外部命令(先查找别名在查找内部命令,缓存最后外部)

命令行格式

  • 在 Linux 操作系统中,凡是在字符操作界面中输入能够完成特定操作和任务的字符串都
    可以称为命令。
  • 严格来说,命令通常只代表实现某一类功能的程序的名称
  • 格式
    命令字 空格 [选项] 空格 [参数]

解释命令字 选项 参数各自的意思及具体使用方式

  1. 命令字
    是整条命令最关键的一部分
    唯一确定
  2. 选项
    短格式选项:使用“-”符号引导 通常 一个字母
    长格式选项:使用“–”符号引导 通常完整的单词
    3.参数
    命令字的处理对象
    可以是文件名、目录(路径)名或用户名等内容
    个数可以是零到多个

;可以隔开命令,执行多个命令

编辑Linux命令行的辅助操作

快捷键功能
Tab键自动补齐(两次可以显示所有项目)
反斜杠“\”强制换行或转义
Ctrl+a光标移到最前面
Ctrl+e 或 end键光标移到最后
Ctrl+U清空至行首不包括当前光标处的字符
Ctrl+K清空至行尾包括当前光标处的字符
Ctrl+W从当前光标删除到开头
Alt+D从当前光标删除末到尾
Ctrl+L清屏
Ctrl+C取消本次命令编辑
Ctrl+S/Ctrl+Q锁屏/解锁
Ctrl+R寻找前面的执行过的命令
向上下箭头会看执行过的任务

反斜杠举例
cmake
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DEXTRA_CHARSETS=all
-DSYSCONFIDIR=/etc
-DMYSQL_DATADIR=/home/mysql/
-DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DSYSCONFIDIR=/etc -DMYSQL_DATADIR=/home/mysql/ -DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock

获得命令帮助

help

help 命令本身是 Linux Shell 中的一个内建指令,其用途是查看各 Shell 内部命令的帮助信息。使用help命令时,只需要添加内部指令的名称作为参数即可。例如“help pwd”、“help echo”等

格式说明

  • []表示可选项
  • CAPS或<>表示可变化的数据
  • …表示一个列表可加多一个或多个
  • x|y|z|(“|”)表示或的意思
  • -abc是-a-b-c(有些命令选项有先后顺序)多个-abc一般而言是没有顺序先后(绝大多数是没有的),只有少数分先后

在这里插入图片描述

–help

查看外部命令帮助

[root@localhost ~]# ls --help
[root@localhost dev]# useradd --help

man

man分九个章节默认打开第一章节(menu菜单 manual手册)

在这里插入图片描述
[root@localhost ~]# man man
在这里插入图片描述

info

info命令与man命令相似,都用于查看命令和软件的帮助文档,但它们的格式和内容有所不同。

运行info命令后,进入一个帮助文档的主菜单,显示帮助文档的目录和一些常用命令。
使用箭头键(上、下、左、右)在不同的节点之间进行浏览。按Enter键进入所选节点的详细内容。
按q键退出帮助文档。
按/键进入搜索模式,输入要搜索的关键字,然后按Enter键进行搜索。
在帮助文档的主菜单中,按h键查看帮助命令和快捷键的说明

目录和文件

linux/usr目录

子目录功能(作用)
/usr/bin/存放系统命令,普通用户和超级用户都可以执行。这些命令和系统启动无关,在单用户模式下不能执行
/usr/sbin/存放根文件系统不必要的系统管理命令,如多数服务程序,只有 root 可以使用。
/usr/lib/应用程序调用的函数库保存位置
/usr/XllR6/图形界面系统保存位置
/usr/local/手工安装的软件保存位置。我们一般建议源码包软件安装在这个位置
/usr/share/应用程序的资源文件保存位置,如帮助文档、说明文档和字体目录
/usr/src/源码包保存位置。我们手工下载的源码包和内核源码包都可以保存到这里。不过笔者更习惯把手工下载的源码包保存到 /usr/local/src/ 目录中,把内核源码保存到 /usr/src/linux/ 目录中
/usr/includeC/C++ 等编程语言头文件的放置目录

linux /var 目录

/var子目录功能(作用)
/var/lib/程序运行中需要调用或改变的数据保存位置。如 MySQL 的数据库保存在 /var/lib/mysql/ 目录中
/var/log/登陆文件放置的目录,其中所包含比较重要的文件如 /var/log/messages, /var/log/wtmp 等。
/var/run/一些服务和程序运行后,它们的 PID(进程 ID)保存位置
/var/spool/里面主要都是一些临时存放,随时会被用户所调用的数据,例如 /var/spool/mail/ 存放新收到的邮件,/var/spool/cron/ 存放系统定时任务。
/var/www/RPM 包安装的 Apache 的网页主目录
/var/nis和/var/ypNIS 服务机制所使用的目录,nis 主要记录所有网络中每一个 client 的连接信息;yp 是 linux 的 nis 服务的日志文件存放的目录
/var/tmp一些应用程序在安装或执行时,需要在重启后使用的某些文件,此目录能将该类文件暂时存放起来,完成后再行删除

cd(change directory)

[root@localhost ~]# cd /data
[root@localhost data]# cd /
[root@localhost /]# cd ~
[root@localhost /]#

命令效果
cd (cd ~)若不指定目标位置,切换到当前用户的宿主目录(家目录)
cd -到前一次目录
“.”当前目录
“…”上一个目录
“~用户名”制定用户的目录
“.”开头的文件隐藏文件
[root@localhost opt]#cat passwd=[root@localhost opt]#cat ./passwd 
[root@localhost /]#cd /data/aa         //**绝对路径**
[root@localhost aa]#cd ../../          //**相对路径**
[root@localhost /]#

alias.别名设置

临时修改

  • alias 命令别名 = ’命令‘
  • unalias 别名命令 删除别名
  • \加别名命令 (显示原始命令)

]# alias 自定义命令=‘要优化的命令’
]unalias 自定义命令
]alias 单独打可以显示 所有别名的命令
\别名 取消别名

永久修改

  • 在/etc/.bashrc 会影响全部
  • /root/.bashrc只影响当前用户

补充:绝对路径>别名>内部>hash>外部命令(先查找别名在查找内部命令,缓存最后外部)

[root@localhost ~]#alias ll='ls -l'               //用ll 来代替 ls -l

[root@localhost ~]#alias grep='grep --color=auto'
//grep设置为带有--color=auto参数的别名;使用grep命令时,匹配的文本会以不同颜色显示,更容易区分。

[root@localhost ~]#alias update='sudo apt update && sudo apt upgrade'
//update命令将会先运行sudo apt update更新软件包列表,然后再运行sudo apt upgrade进行软件包升级。

[root@localhost ~]#unalias ll                    //取消之前设置的ll 别名

文件类型

  1. “-” 普通文件
  2. “l” 符号链接文件
  3. “b” 块设备block 比如直接读1块 /dev 4k (512*8(扇区)=4096字节=4k)
  4. “c” 字符文件 character
  5. “d”目录文件
  6. “s”套接字文件socket 可以双向(程序之间的信息交流)
  7. “p”管道文件的pipe A-管道文件-B A写 B读 单向的

file命令可以识别文件类型,文件后缀无法判断文件类型

[root@localhost data]# ls /run/
autofs.fifo-misc  
#管道
gssproxy.sock
#套接字

通配符

去匹配文件名(包括文件夹)

 - 星号  *: 代表零个或多个字符。例如,*.txt 匹配所有以 .txt 结尾的文件名。

 - 问号 ?:代表一个字符。例如,file?.txt 匹配 file1.txt、file2.txt 等文件名。

 - 方括号 []:用于匹配方括号内的任意一个字符。例如,file[123].txt 匹配 file1.txt、file2.txt 和 file3.txt。

 - 花括号 {}:用于表示多个可能的选项。例如,{a,b,c}.txt 匹配 a.txt、b.txt 和 c.txt。

示例:
ls *.txt                                         //列出当前目录下所有以 .txt 结尾的文件
find . -type f -name "*.jpg" -o -name "*.png"    //查找当前目录及子目录下所有以 .jpg 或 .png 结尾的图片文件
rm *.tmp                                         //删除当前目录下所有以 .tmp 结尾的临时文件
cp *.{doc,docx} /path/to/destination/            //复制所有以 .doc 和 .docx 结尾的文件到另一个目录 

求求了~ 文章有问题就指点一二
请添加图片描述
实在不行,你评论里喷我两句!
请添加图片描述
大爷下次再来玩啊~ kiss kiss~ (挥手帕)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值