4,文件盒目录管理命令,shell的引用,shell历史

目录:

cd : 切换目录

cd    路径: 切换至该文件路径

cd ~[username]    : 切换至该用户的家目录,

cd - : 切换至上一次所在的目录

pwd:pring working directory: 显示当前所在目录

mkdir : 创建目录

-p : 先创建父目录, 也就是 递归 创建

-v : 显示 创建 时 的 详细 信息

这里 涉及 到 一个 特性, bash关键字 的 展开, 例如

{a,b}_{c,d} 展开 之后 就是 a_c, a_d, b_c, b_d, 这个 在 创建 多个 文件 或 目录 时 很有用

rmdir : 删除空目录: 这里 注意, 要 删除 的 目录 一定 是 空 的。。,

-p : 递归 删除

-v : 显示 删除 信息。。



shell中的 引用:

"" :强引用, 引用中可以加${PAHT}之类的变量引用,

‘‘ :弱引用, 引用中间的字符串只能是字符串

`` :命令替换, 引用中的命令会被执行。, 当然,也可使用$(命令) 这种 形式 进行 命令替换

echo : 输出 一句 话, 写 脚本的 时候 有用, 相当于 c语言 里的 printf, shell里 也有 printf

${NAME} 这个 是 引用 环境变量, 其中 {} 在 大多数情况 下 是 可以 省略 的, 但 如

${PATH}bbbb 这种 情况 就 不能 省略 了, 省略之后 就 变成

#PATHbbbb 了, 系统中 是 没有 这个 环境变量 的。



shell特性 之 命令历史:

bash会保留命令历史在缓冲区中,当shell退出时,命令历史会由缓冲区存放 到 ~/.bash_history 中

使用 ↑↓ 尖头 可以 翻看 曾经执行 过 的 命令

history 快捷方式:

!#: #为命令历史列表中的命令编号,可用于执行第#条命令

!!: 执行上一条命令

!-#: 执行倒数第#条命令

!$: 引用上一个命令的最后一个参数

执行 history 就 可以 看到 命令历史 了, 这里 太长了, 就 截取 了 最后 一部分, 先 看一下 快捷 方式 把,

这里我又执行了下909号 的 这个 命令,

这个是执行上一条语句,其实 还是 再 执行 一次 echo 语句,

这个 和 !! 没区别 的, 也是 执行 上一条 语句, 当然, 把-1 改成 别的 就 有 区别 了。。

最后说下 !$ 把,

我 最开始 是 在 / 目录 下 查看 了 一下 我 的 家目录, 然后 用 cd !$ 直接 跳转 到 我的 家目录, 这里 的 !$ 就是 上个 命令 的 参数。。

----------------------------------------------------------

history选项:

-c: 清空历史

-d#:删除指定命令历史,#为命令历史的编号

-a:追加当前命令历史到命令历史文件中去。

命令历史相关的环境变量:

HISTSIZE:命令历史中可以保存的命令的个数;

HISTFILE: 命令历史文件;

HISTFILESIZE:命令历史文件可以保存的命令的个数;

HISTCONTROL: 控制命令历史的生成;

ignoredups: 忽略记录重复的命令;连续的相同命令才为重复;

ignorespace: 不记录以空白字符开头的命令;

ignoreboth: 同时具有上面两种特性;



shell中变量赋值:



FHS:文件系统目录标准, 这个标准列出了Linux应该具有哪些目录,这里给出 根目录下 的 一些 重要 的 目录 的 作用。

/bin: 所有用户可执行的程序

/sbin: 管理员可执行的程序

/usr/bin

/usr/sbin

/usr/local/bin

/usr/local/sbin

/boot: 存储系统引导文件:内核、ramfs文件、bootloader(grub);

/dev: 设备文件存放目录;

/etc: 配置文件的存放目录;

/etc/sysconfig:

/etc/init.d: 系统服务脚本

/home: 普通用户,默认在/home下有一个与其名称同名目录,作为用户的家目录;

/root: 管理员的家目录;

/lib, /lib64:库文件;

/media: 专用挂载位置,通常用来挂载便携式设备;

/mnt: 专用挂载位置,挂载额外存储设备;

/misc: 备用目录

/opt: 备用目录,但通常用来安装第三方软件;

/proc: 伪文件系统,内核参数的映射;

/sys: 伪文件系统,系统级别的用于配置外围设备秘的参数;

/srv: 为服务提供数据存放位置;

/tmp: 临时文件系统;

/usr: shared, readonly

/usr/include: 头文件

/var: 频繁发生变化的文件

/var/log

/var/lock

/var/run

/var/cache



文件:


linux文件类型:

普通文件:-, file, 这个 就 相当于 windows里 的 txt 文件

目录文件:d,directory, 这个 相当于 windows 里 的 文件夹把。

链接文件(符号链接):l,link, 这个 指的是 软连接, 相当于 快捷方式

设备文件:

字符设备:c, char, 这个 又叫做 串行设备接口, 如 键盘 什么 的。

块设备: b, block, 这个 又叫做 并行设备接口,如 硬盘

命名管道:p, pipeline, 不太理解, 学到了 再说 把。

套接字文件:s, socket, 这个 也 不太清楚。。

------------------------------------------

Linux文件时间戳:

访问时间, access time, atime

修改时间, modify time, mtime

改变时间, change time, ctime

-------------------------------------------

文件目录树:

tree 命令, 这个 命令 一般 系统 不会 自带 的, 需要 自己 安装。。

#  yum install tree,   安装 tree 命令

------------------------------------------

bash特性 之 命令别名:

# alias 别名=‘原始命令名‘

当 alias 无参数 是 可以 查看 已定义 的 命令 别名

这里 还 可以 看到 ls 命令 也 是个 别名, ls=‘ls --color=auto‘, 这里 如果 想 执行 命令的 原有 意思 可以 在 命令 前面 加 ‘ \ ’, 如,

取消 命令 别名 后 ls 就 不显示 颜色 了。。

# unalias 别名, 这个 是 用于 取消 命令 别名 的

----------------------------------------------

文本文件 的 查看:

cat File : 正序查看一个文件

-n 显示行号

-E 显示行结束符

-v 显示非打印字符

-A 显示所有字符

-s      多个连续的空白行显示为一个空白行

tac File : 与cat 相反, 逆序 查看 一个 文件。。

--------------------

more: 显示 多行 文件, 用法 同 man, 不过 在 显示 完文件 最后 一行 后 会 自动退出。

less: 显示 多行 文件, 用法 同 man, 不过 貌似 man 是 用 less 来 实现 的。。。, 这个 与          more 的 区别 是 显示 完 最后一行 后 不会 退出 了,

--------------------

head: 显示 文件 的 前几行, 默认 为 显示 前10行

tail: 显示 文件 的 后几行, 默认 为 显示 后10行

-n# : 设置 所 显示 的 行数, # 为 数字,

-------------------------

echo 命令:

-e : 允许使用类似 c 语言 里面 的 转义字符

-n : 不 默认 输出 换行 符

-------------------------

关于 文件 的 命令

touch : 创建 文件, 其实 是 修改 时间戳。。, 当 这个 文件 不存在 是 会 自动 创建文件。

access time, atime,

modify time, mtime

change time, ctime

-c: 不创建空文件

-a: 仅修改访问时间

-m: 仅修改修改时间

-t STAMP: [CC]YYMMDDhhmm.s

access time, atime

modify time, mtime

change time, ctime

-c: 不创建空文件

-a: 仅修改访问时间

-m: 仅修改修改时间

-t STAMP: [CC]YYMMDDhhmm.s

在 一个 空 文件夹 里面 创建 一个 a 文件, 可以 用 stat 来 查看 这个 文件 的 信息。

stat : 显示 一个 文件 的 基本 信息。

现在 来 改变 一下 文件 的 Access 时间戳:

ok, 已经 改好 了

------------------------------------------------------------

cp: copy : 复制文件

SRC, DEST

cp SRC... DEST

-r:递归复制

-i: 人机交互

-d: 当源为链接文件时,复制链接文件本身而非指向的源文件

-a: 相当于-dr

-p: 保持原有属性

-f: 强制

假如SRC是一个文件:

如果目标是一个文件且存在:覆盖

如果目标文件不存在:创建新文件

如果目标存在,且是个目录:复制源至目标目录,并保持原名

假如SRC有多个文件:

如果目标存在,且是一个文件:复制无法进行

如果目标存在,且是一个目录:复制各文件至目标目录中,并保持原名

如果目标不存在:复制无法进行

如果SRC只有一个且是目录:-r

如果目标是一个文件且存在:失败

如果目标文件不存在:创建新目录

如果目标存在,且是个目录:复制源目录至目标目录中,且保持原名

把 /etc/passwd 复制 到 当前 文件 加 的 aaa 文件 中, 并 查看 了 一下 aaa 文件。。

复制 大概 就 这些 把, 没什么 太高端 的 东西。。

---------------------------------------------------------

mv : move : 移动文件, 用法 和 cp 差不多,

可以直接移动目录,而无须-r选项;

----------------------------------------------------------

rm : remove :删除 文件

-r : 递归 删除 文件, 加上 这个 选项 就 可以 删除 非空 目录 了,~

-i : 人机交互

-v : 删除 的 详细信息。

-f : 强制删除,不需要 人机 交互

---------------------------------------------------------------

nano : 一个 简单 的 文本 编辑器,

Ctrl+O 是 保存, Ctrl+X 是 退出



bash特性 之 globbing : 文件名 通配

通配符:

* : 表示 任意 长度 的 任意 字符

? : 表示 任意 单个 字符

[]: 指定 字符 范围 内 的 任意 单个 字符

[xyz]    x 或者 y 或者 z

[a-z]    a 到 z 之间 的 任意 一个 字符

[0-9]    0 到 9 之间 的 任意 一个 字符

[a-z0-9] a 到 z , 0 到 9 之间 任意 一个 字符

[^]: 匹配 到 指定 字符 范围 外 的 任意 单个 字符

[^0-9]     非 数字 字符

[[:upper:]]  : 所有大写字母

[[:lower:]]  : 所有小写字母

[[:alpha:]]  : 大小写字母

[[:digit:]]  : 数字

[[:alnum:]]  : 大小写字母加数字

[[:space:]]  : 空白字符

[[:punct:]]  : 标点符号。

时间: 2024-12-24 14:13:29

4,文件盒目录管理命令,shell的引用,shell历史的相关文章

第5章 LINUX文件及目录管理命令基础

第5章 LINUX文件及目录管理命令基础5.1 操作LINUX必知必会基础知识5.1.1 Linux命令行组成结构root @ oldboy ~ # :当前用户名 分隔符 主机名 当前用户登陆后的位置,这是个变量 提示符 5.1.2 基本的Linux命令操作语法示例5.1.3 Linux与Windows的目录结构对比5.2 Linux文件及目录核心命令5.2.1 pwd:显示当前所在位置信息"print working directory"-L:逻辑路径:-P:物理路径系统Bash命令

Linux文件与目录管理命令总结

在Linux下对文件和目录的操作是学习linux的基础,文件的操作无非就是增删改查等等.对于目录的操作也是对目录的增删改查以及修改目录属性等操作.在了解目录管理前得先了解目录的结构.linux下的目录是树型结构,所有的目录都从根(/)开始,其他的文件系统以挂载的方式挂载到目录上去进行使用.访问目录时有相对路径和绝对路径之分. 相对路径:路径的写法不是由根写起的,而是在当前路径的基础之上的.例如:例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd .

LINUX文件及目录管理命令基础(2)

Linux文件类型 文件作为Linux操作系统中最常见的对象,在系统中被分为了多种类型 如下: - 普通文件 d 目录 l 链接 b 块设备 c 字符设备 p 管道设备 s 套接字文件 Linux目录结构 绝对路径及相对路径 绝对路径:一切从根开始"/" 相对路径:从当前所在路径开始 LINUX普通文件及目录核心命令 ls pwd cd tree mkdir touch cp mv rm ls命令 ls 查看当前目录下的内容 ls 常用选项: -a 显示指定目录下所有子目录与文件,包括

Linux:文件及目录管理命令基础

1.pwd显示当前所在位置信息 2.cd切换目录 3.tree以树形结构显示目录下的内容 4.mkdir创建目录 5.touch创建文件 6.ls显示目录下内容及属性信息的命令 7.cp复制文件或目录 8.mv移动或重命名文件或目录 9.rm删除文件或目录 1.pwd显示当前所在位置信息 pwd #查看当前所在目录(此命令一般直接使用) 2.cd切换目录 cd 命令语法: cd [选项] 目录 cd 的常用选项: cd ~ /cd #切换到当前用户的家目录 cd . #保持当前目录不变 cd .

文件与目录管理命令(三)

目录管理类命令包括:cd,pwd,ls,mkdir,rmdir,tree,cp,mv,rm,touch,stat 1.1.ls 功能:列出文件或目录 命令帮助: man ls info ls ls --help help cd  #只有内部命令才能用ls /usr/share/man 文档位置 常用选项: -a:列出所有的文件(包含隐藏文件) -l:以长格式的形式列出信息 -i:显示文件inode号 -h:单位换算 -m:以逗号分割文件名列出 -t:按照修改时间来排序 -r:按照修改时间来反向排

LINUX文件及目录管理命令基础

Linux命令行组成结构 Linux命令结构 在Linux中一切皆文件,一切皆命令! 命令提示符: [[email protected] ~]# [[email protected] ~]$ Linux命令行常用快捷键 ctrl + c cancel 取消当前的操作 ctrl + l (小写字母L) clear(命令) ctrl + d 退出当前用户 ctrl + r查找(历史命令). history|grep ctrl + a 把光标移动到行首 ctrl + e 把光标移动到行尾 ctrl+

Linux文件与目录管理命令小结

1.cd cd ~,cd:回到自己的主文件夹:cd ..:目前的上一层:cd -:回到刚才那个目录 2.pwd显示当前的所在的目录 -p:标书不以连接文件的数据显示,而是显示正确的完整路径 3.mkdir新建新目录 -p:自行创建多层目录:-m mod:强制设置权限 4.rmdir删除“空”的目录 当要将一个非空的目录下的东西删掉:rm -r dirName 5.ls查看文件与目录 -a:全部文件,包括隐藏文件:-d:仅列出目录本身:-F:根据文件.目录等信息给予附加数据结构(*:代表可执行文件

[Linux] Linux学习笔记(5)-文件与目录管理

1.Linux目录结构为树状结构,最顶层的目录为跟目录"/",其它目录通过挂载可以将它添加到目录树中,通过解除挂载移除它们. 2.绝对路径与相对路径 绝对路径写法:由根目录"/"写起,例如:/usr/share/man这个目录: 相对路径写法:不是由"/"写起,例如要由/usr/share/man转移到/usr/share/doc,可以写成:cd ../doc .不过值得注意的是,假如我想从跟目录"/"跳转到"/us

002-Linux文件类型、权限及目录管理命令

l  1.基本概念: 1.)魔数(magic number):标识二进制程序的执行格式 2.)目录详解 1.目录(directory):文件,路径映射 工作目录(working directory) 当前目录(currentdirectory) 2.路径:从指定起始点到目的地所经过位置 绝对路径:以根为基准进行查找 相对路径:以当前目录为基准进行查找 3.文件系统(file system):层次化管理 3.)文件类型: -:普通文件(file) d: 目录文件(directory file) b