文章目录

  • 关于Linux
  • Shell
  • Linux命令的分类
    • 内部命令与外部命令的区别
  • Linux命令行的格式
    • 通用的命令行使用的格式
  • 获得命令帮助得到方法
    • 内部命令help
    • 使用man命令阅读手册页
    • 查看当前的工作目录 -pwd
    • 切换工作目录 -cd
    • 列表显示目录内容-ls
    • 颜色区别
    • 设置别名 -alias
    • 统计目录及文件空间占用情况 -du
  • 创建新目录 -mkdir
    • 创建新的空目录
    • 创建空文件命令 -touch
    • 创建链接文件ln(软链接、硬链接)
    • 复制文件或目录 -cp
    • 删除文件或目录 -rm
    • 查找命令/文件存放目录 -which
    • 查找文件或目录 -find

关于Linux

Linux的老大哥是UNIX

以Linux为核心的操作系统软件包

Linux以靠目录和文件为挂杆使用

Shell

Linux系统中运行的一种特殊程序

在用户和内核之间充当“翻译官”

用户登录Linux系统时,自动加载一个Shell程序

Bash是Linux系统中默认使用的Shell程序

是系统中运行的一种特殊的程序;在操作界面离开Shell就不能操作了

内核(系统)只能识别二进制

自己用户的终端与内核进行交互,通过Shell的“翻译官”来完成命令

Shell是一个程序也是一个交互的平台

自动加载=开机自启

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


接收用户输入的命令->解释命令->传递给系统内核执行

Linux命令的分类

内部命令与外部命令的区别

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

查看命令
help—enable—type

禁用内部命令

enable -n

例:enable -n cd(关闭cd内部命令)

enable cd(开启cd内部命令)

type ls可以查看到外部命令

type cd可以查看到内嵌(内部命令)

whereis ls可以查看命令具体的所在位置

外部命令使用过后会被记录在内存(缓存,但是会占用内存,临时性的)可以加快读取的速度
hash缓存表可以查看到自己使用过的命令(一旦在缓存表中删除了命令,就不会在入缓存表)

Linux命令行的格式

通用的命令行使用的格式

命令字 [选择] [参数]
命令字是整条命令中最关键的一部分唯一确定一条命令
选项端格式选项:使用“-”符号引导(多个单字符选项可以组合在一起使用)
​  长格式选项:使用“--”符号引导
参数命令字的处理对象可以是文件名、目录(路径)名或用户名等内容个数可以是零到多个
编辑Linux命令行编辑Linux命令行的辅助操作
Tab键:自动补齐
反斜杠“\”:强制换行
Ctrl+U组合键:清空至行首
Ctrl+K组合键:清空至行尾
Ctrl+L组合键:清屏
Ctrl+C组合键:取消本次命令编辑
Ctrl+E组合键:光标跳到行尾
Ctrl+A组合键:光标调到行头

获得命令帮助得到方法

内部命令help

·查看Shell内部命令的帮助信息
命令的“–help”选项
·适用于大多数Lionux外部命令
显示命名的帮助信息,命令的参数和用法等。

使用man命令阅读手册页

Linux的命令手册大全(命令:man cd)
使用“↑”、“↓”方向键滚动一行文本
使用Page Up 和Page Down
按Q或q键退出阅读环境
按“\”键查找内容
查找翻页“n”向下“N”向上

man ls | col -b > lshelp.txt

查看当前的工作目录 -pwd

显示用户当前所在的工作目录位置
pwd

切换工作目录 -cd

将用户的工作目录更改到其他位置

格式 说明
cd 目标位置 切换到目标位置
cd~ 若不指定目标位置,切换到当前用户的宿主目录
cd 若不指定目标位置切换到当前用户的宿主目录
cd - 切换到上一次执行cd命令之前所在的目录
·绝对路径
·相对路径
相对路径的表现形式
表现形式 说明
直接使用目录名或者文件名 表示当前工作目录中的子目录、文件的位置
以一个点好“.”开头 表示以当前的工作目录作为起点
以两个点号“…”开头 表示以当前目录的上一级目录(父目录)作为起点
以“~用户名”形式开头 表示以指定用户的宿主目录作为起点
cd /home:后面跟绝对路径,切换到home目录
cd ./home:后面跟相对路径,切换到home目录
cd ~:切换到当前用户的家目录
cd:切换到当前用户的家目录
cd ~user:切换到某一个用户的家目录,只有root才行,别的用户只能在自己家
cd -:切换到上一次执行操作的目录
cd …:切换到上一层目录(父目录)

列表显示目录内容-ls

显示目录中内容,包括子目录和文件相关属性信息
ls [选项] [文件或目录…]

-l 将文件信息属性详情列出,通常直接使用li,因为设置了别名
-R 递归显示,比如一个目录下还有文件,则把那个文件也一起列出
-d 查看目录本身信息,不显示目录下的内容
-i 显示inode值
-h 友好显示文件大小
-a 遍历所有文件及目录(ls内定将文件名或目录名称开头为“.”的视为隐藏档,不会列出)
-A 跟-a 唯一的不同是不列出当前目录和上一层目录

颜色区别

白色 数据文件 TXT
绿色 可执行文件
黄色 设备文件
红色 压缩包
蓝色 文件夹
天蓝色 连接文件(快捷方式)

ls -lh

通配符 用处
— “?” 匹配一个字符
— “ * ” 匹配所有非隐藏的字符无论多长多短,但不匹配“.”开头的文件,即隐藏文件
— {1…10} 1到10
—{a…z} a,b,c,d,e……y,z
—{A…Z} A,B,C,D,E……Y,Z
[123] 取其中之一有就显示没有也无所谓
[a-z] 范围需要注意
[0-9] 匹配数字范围(0123456789)
| 转义符,表示原来的意思
[[:lower:]] 小写字母表示a-z
[[:upper:]] 大写字母表示A-Z
[^zhou] 匹配列表中的所有字符以外的字符
[[:digit:]] 任意数字,相当于0-9

设置别名 -alias

通过别名机制简化常用的、比较长的命令
alias 命令别名=命令
例:设置myls为ls -alh的别名
alias myls=‘ls -alh’

alias 查看系统当前所有可用别名
alias cp=‘cp -i’
alias egrep=‘egrep --color=auto’
alias fgrep=‘fgrep --color=auto’
alias grep=‘grep --color=auto’
alias l.=‘ls -d .* --color=auto’
alias ll=‘ls -l --color=auto’
alias ls=‘ls --color=auto’
alias mv=‘mv -i’
alias rm=‘rm -i’
alias which=‘alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde’

alias ll=‘ls -lt’ 设置别名

unalias ll 删除别名
永久生效
vim /root/.bashrc
临时修改

  • alias 命令别名 = “命令”
  • unalias 别名命令 删除别名
  • \ 加命令 原始命令

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

统计目录及文件空间占用情况 -du

统计指定目录(或文件)所占用磁盘空间的大小
du [选项] [文件或目录…]

选项 说明
-a 统计磁盘空间占用是包括所有的文件,而不仅仅只统计目录
-h 以更人性化的方式(默认以KB计数,但不显示单位)显示出统计结果
-s 只统计所占用空间总的(Summary)大小,而不是统计每个子目录、文件的大小
例:统计出/var/log目录所占用空间的大小
du -sh /var/log.

创建新目录 -mkdir

创建新的空目录

— mk [选项] 目录位置及名称…
[选项]:-p 一次性创建嵌套的多层目录
-p:创建一个已有的目录会报错,加-p则不会报错/当父目录不存在时,递归创建

例:在当前目录下创建名为public_html的子目录
mkdir public_html
创建目录/aa,在/aa目录下创建子目录bb,在/aa/bb目录下创建子目录cc
mkdir -p /aa/bb/cc

创建空文件命令 -touch

①文件存在:修改文件或者目录的时间属性,包括存取时间和更改时间。
②文件不存在:创建新文件
touch [文件名]
touch [文件名] [文件名]

创建链接文件ln(软链接、硬链接)

ln命令用于为文件或目录奖励链接(类似于Windows系统中的快捷方式),提高用户定位文件或定位目录的效率练级文件包括软链接和硬链接两种类型,其中软链接又称为符号链接。无论是访问软链接还是硬链接,与直接访问原始文件的效果基本相同
ln -s 创建软链接,相当于创建一个快捷方式
ln 创建硬链接,相当于复制了一份副本

软链接建立时原始文件可以不可存在
如果删除源文件之后有重新建立源文件,那么软链接照样可以用
软链接文件的大小就是软链接文件本身的文件名字符长度!
可以给目录做软链接,为了防止目录被删

硬软区别
硬链接不能跨分区建立连接,无法对文件夹创建
删除硬件连接可以继续访问硬链接

软链接可以跨设备,可以支持文件夹
软链接删除源文件不能访问

硬链接:
一般情况下,文件名和inode号码“一一对应”关系,每个inode号码对应一个文件名。
但是,Unix/Linux系统允许,多个文件名指向同一个inode号码,可以用不同的文件名访问同样的内容;对文件内容进行修改,会影响到所有文件名;但是,删除一个文件名,不影响另一个文件名的访问。
这种情况就被称为“硬链接”(hard link)

软链接:
除了硬链接以外,还有一种特殊情况。文件A和文件B的inode号码虽然不一样,但是文件A的内容是文件B的路径。读取文件A时,系统会自动将访问者导向文件B。因此,无论打开哪一个文件,最终读取的都是文件B。总金额受,文件A就是称为文件B的“软链接”(soft link)或者“符号链接”(symolic link)。
这是意味着,文件A依赖于文件B而存在,如果删除了文件B,打开文件A就会报错:“Np such file or directory"。
这是软链接与硬链接最大的不同:
文件A指向文件B的文件名,而不是文件B的inode号码,文件B的inode"链接数"不会因此发生变化。

复制文件或目录 -cp

将需要复制的文件或目录(源)重建一份,并保存为新的文件或目录
cp [选项]…源文件或目录…目标文件或目录…

选项 说明
-f 覆盖目标同名文件或目录时不进行提醒,直接强制复制
-i 覆盖目标同名文件或目录时提醒用户确认
-p 复制时保持源文件的权限,属主及时间标记得等属性不变
-r 复制目录时必须使用此选项,表示递归复制所有文件及子目录
-a 保留权限(递归复制)

删除文件或目录 -rm

删除指定的文件或目录
rm [选项] 要删除的文件或目录…

移动文件或目录 -mv
将指定的文件或目录转移位置
如果目标位置与源位置相同,则相当于执行重新名操作
mv [选项] …源文件或目录…目标文件或目录

查找命令/文件存放目录 -which

搜索范围由环境变量PATH决定(echo $PATH)
which 命令|程序名

which -a 命令|程序名

查找文件或目录 -find

采用递归方式,根据目标的名称、类型、大小等不同属性进行精细查看
find [查找范围] [查找条件表达式]
[查找范围]:查找文件或子目录的目标位置
[查找条件表达式]:查找条件类型

查找类型 关键字 说明
按名称查找 -name 根据目标文件的名称进行查找,允许使用“*”及“?”通配符
按文件大小查找 -size 根据目标文件的大小进行查找一般使用“+”、“-”号设置超过或小于指定的大小作为查找条件常用的容量单位包括kB(注意k是小写)、MB、GB
按文件属主查找 -user 根据文件是否属于目标用户进行查找
按文件类型查找 -type 根据文件的类型进行查找文件类型包括普通文件(f)、目录(d)、设备文件(b)、字符设备文件©等

使用find 命令实现多个查找条件
各表达式之间使用逻辑运算符

  • "-a"表示而且(and)
  • “-o"表示或者(or)

-a 为前后同时满足

查找存在的用户的文件
find /home -user 用户名
find /home -user 用户名 -group 组名

总结

  • Shell是一种特殊程序
  • Linux命令的分类、格式及使用方式
  • Linux常用命令:
    查看及切换目录(pwd,cd,ls,du)
    创建目录和文件(mkdir,touch,ln)
    复制、删除、移动目录和文件(cp,rm,mv)
    查找目录和文件(which,find)

Linux,shell与alias相关推荐

  1. 【Linux】Shell三类变量的作用域——linux shell “永久环境变量”、“临时环境变量”和普通变量之完全解读...

    2015-05-08 00:15 3896人阅读 评论(10) 收藏 举报 本文章已收录于: 分类: 软件开发进阶(419) 作者同类文章X Unix/Linux杂项(118) 作者同类文章X 版权声 ...

  2. linux定义别名出错,Linux自定义别名alias重启失效问题

    Linux上的别名功能非常方便,例如ll可以显示文件列表的长信息,但是却不是以human能读懂的方式显示,所以我尝试直接在命令行中自定义一个别名: alisa lk='ls -lh' 然后lk就能正常 ...

  3. linux shell zsh,Linux终极shell Z Shell 用强大的zsh oh-my-zsh把Bash换掉

    Bash确实是不错的Shell,但仍有用不少不尽人意的地方,如自动补全的功能不够强大,定位较长路径不够方便,命令历史管理不够完善等.javascript 介绍使用zsh,功能十分强大-推荐给你们!ja ...

  4. Linux Shell命令能力倾向问题和解答

    This section contains Aptitude Questions and Answers on Linux Shell Commands. 本节包含有关Linux Shell命令的 A ...

  5. linux sh 必要,Linux Shell学习之基础篇(不适合学习,仅为本人笔记)

    在学习Linux和OpenStack过程中,感觉不管是大规模部署部署还是运维,Shell脚本都已经是标配,所以学好脚本很有必要. 以下仅为Linux Shell的一些基础笔记,这里作为笔记记下. == ...

  6. linux命令行的操作符,Linux shell 比较运算符使用方法教程

    Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统.对于Linux基础,肯定要掌握的是基本命令和一些重要运算符,这篇文章主要介绍了Linux shell 比较运算符详解 ...

  7. linux用户开机.bashrc,验证linux shell在启动时会自动执行用户主目录下的.bashrc脚本...

    在本文中, 我们来一起验证linux shell在启动时会自动执行用户主目录下的.bashrc脚本(注意是.bashrc而不是bashrc). 如果你的主目录下没有.bashrc, 那也不要担心,自己 ...

  8. Linux shell的简单学习

    Linux shell的简单学习 shell script 其实就是纯文本档,我们可以编辑这个档案,然后讥这个档案来帮我们一次执行多个指令, 戒者是刟用一些运算不逡辑刞断来帮我们达成某些功能. Lin ...

  9. linux shell 快速掌握

    1. shell 介绍 1.1 linux shell介绍 shell 是一个解释器,提供一个给用户内内核发送命令的界面,内核回复shell界面   shell分类:   b shell类:   ba ...

最新文章

  1. 以太坊:比特币 + 无限可能
  2. http://blog.51cto.com/wbb827/1175634
  3. python深拷贝和浅拷贝的使用场景_深拷贝、浅拷贝的理解与使用场景
  4. 一台机器上有几个java虚拟机
  5. CVPR 2020 论文大盘点-目标检测篇
  6. Mysql 数据 导入 导出
  7. java整理软件--- Java OCR 图像智能字符识别技术,可识别中文,但是验证码不可以识别...已测识别中文效果很好
  8. Linux 命令(17)—— su 与 sudo 命令
  9. Python面向对象中的多态与静态语言(C++,Java)的区别
  10. 若变量已正确定义并赋值,不符合c语言语法的表达式是____.,若变量已正确定义并赋值,表达式______不符合C语言语法.A、a*b/c; B、3.14%2 C、2,b D、a/b/...
  11. 2月之最---2012年最后一个2月((*^__^*) )
  12. Quartus II——基于VGA的图像显示
  13. java合并果子_合并果子(经典优先队列)
  14. 创龙Xilinx Zynq-7000系列SoC高性能处理器开发板的SFP+接口、FMC接口
  15. Java 导出CSV文件及实现web下载CSV
  16. Jquery 对 身份证号码的验证 (15/18位)
  17. Unable to resolve dependency for :app@debug/compileClasspath': Could not resolve com.***问题解决
  18. 【android逆向笔记】(二)滚动的天空逆向
  19. 在线制作banner的网站
  20. 包含高知漫画家珍贵作品的艺术项目“NAKED Manga Mappin’!”3月6日(周五)起在高知龙马机场展出

热门文章

  1. ISP pipeline之lens shading correction
  2. TROY,加密资产新范式下的基础设施
  3. 认认真真推荐几个优质公众号
  4. 2021年安徽高考成绩排名查询,安徽高考排名对应大学-安徽高考位次查询(2021年文科参考)...
  5. 纵观计算机简史ppt,纵观计算机简史初中信息技术新课本中国地图出社课件.ppt...
  6. H3C交换机查看相关的命令
  7. Qt::​Alignment 设置对齐方式
  8. MySQL-06-MD5加密
  9. BSP 工程管理实验
  10. hda vs sda