Liunx 学习路程
liunx命令
liunx文件格式:
-:表示普通文件
d: 表示目录文件
b:表示快文件
c: 表示字符设备文件
l: 表示软链接文件
p: 表示管道文件
s: 表示套接字文件
(centos7.6 /bin/bash)
w 显示当前登陆用户的操作
who 显示目前登陆系统的用户信息
whoami 显示当前登陆用户的名称
which判断外部命令路径 which cmd
whereis who 看到外部命令路径可以看到帮助手册
tty 显示当前目录终端
who am i 显示当前目录终端和链接地址
init # 切换到当前终端并关闭上一终端
runlevel 查看切换的终端
free 看内存
lscpu 查看cpu
lsblk 查看硬件挂载
cal 查看日历
date 看软件日期
hwclock、clock 看硬件日期 -s 以硬件为准修改软件时间 -w 以软件为准修改硬件时间
timedatectl status 查看时区
timedatectl list-timezones 查看所有时区
timedatectl set-timezone更改时区
echo 回显显示字符 " "弱引用 ‘ ‘强引用
识别命令
history 看历史命令
PWD(OLDPWD) 看当前目录 相对目录、绝对目录
ps aux 看当前进程
df 查看光盘挂载
uanme -r -n 依次系统名 版本号 主机名
alias 别名
hash 查看缓存
一些命令用法:1
一、ls 列出当前目录的内容或指定目录
用法:ls [options] [files_or_dirs]
示例
ls -a 包含隐藏文件
ls -l 显示额外的信息
ls -R 目录递归通过 一直查看到底
ls -ld 目录和符号链接信息
ls -1 文件分行显示
ls –S 按从大到小排序
ls –t 按mtime排序
ls –u 配合-t选项,显示并按atime从新到旧排序
ls –U 按目录存放顺序显示
ls –X 按文件后缀排序
ls -d 列出当前文件属性,不列出子目录信息
补充一个概念一个文件或者目录创建过后有三个时间戳:
access time 访问时间,atime,读取文件内容
modify time 修改时间, mtime,改变文件内容(数据)
change time 改变时间, ctime,元数据发生改变
stat可以查看
二、touch 创建空文件(-)
用法:touch [OPTION]... FILE...
-a 仅改变 atime和ctime
-m 仅改变 mtime和ctime
-t [[CC]YY]MMDDhhmm[.ss]指定atime和mtime的时间戳
-c 如果文件不存在,则不予创建
三、cp 复制文件和目录
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
从目录到根源
cp SRC DEST
SRC是文件:
如果目标不存在:新建DEST,并将SRC中内容填充至DEST中
如果目标存在:如果DEST是文件:将SRC中的内容覆盖至DEST中
基于安全,建议为cp命令使用-i选项
如果DEST是目录:在DEST下新建与原文件同名的文件,并将SRC中内容填充至新文件中
-i 覆盖前提示
-n 不覆盖,注意两者顺序
-r, -R 递归复制目录及内部的所有内容
-a 归档,相当于-dR --preserv=all
-d --no-dereference --preserv=links 不复制原文件,只复制链接名
--preserv[=ATTR_LIST]
mode: 权限
ownership: 属主属组
timestamp:
links
xattr
context
all
-p 等同--preserv=mode,ownership,timestamp
-v --verbose
-f --force
-u --update 只复制源比目标更新文件或目标不存在的文件
-b 目标存在,覆盖前先备份,形式为 filename~
--backup=numbered 目标存在,覆盖前先备份加数字后缀
四、mv移动和重明敏文件
mv [OPTION]... [-T] SOURCE DEST -- 一个文件到一个目录
mv [OPTION]... SOURCE... DIRECTORY -- 根源到目录
mv [OPTION]... -t DIRECTORY SOURCE...
常用选项:
-i 交互式
-f 强制
-b 目标存在,覆盖前先备份
五、rm 删除
rm [OPTION]... FILE...
常用选项:
-i 交互式
-f 强制删除
-r 递归
--no-preserve-root 删除/
示例:rm -rf /*
六、目录操作
tree 显示目录树
-d: 只显示目录
-L level:指定显示的层级数目
-P pattern: 只显示由指定pattern匹配到的路径
mkdir 创建目录
-p: 存在于不报错,且可自动创建所需的各目录
-v: 显示详细信息
-m MODE: 创建目录时直接指定权限
rmdir 删除空目录
-p: 递归删除父空目录
-v: 显示详细信息
rm -r 递归删除目录树
这里有一个补充的inode、软连接、硬链接的概念需要理解
检查文件的类型,然后确定适当的打开命令或应用程序使用
file [options] <filename>...
常用选项:
-b 列出文件辨识结果时,不显示文件名称
-f filelist 列出文件filelist中文件名的文件类型
-F 使用指定分隔符号替换输出文件名后默认的”:”分隔符
-L 查看对应软链接对应文件的文件类型
--help 显示命令在线帮助
七、标准I/O
标准输入和输出
程序:指令+数据
读入数据:Input
输出数据:Output
打开的文件都有一个fd: file descriptor (文件描述符)
Linux给程序提供三种I/O设备
标准输入(STDIN)-0 默认接受来自键盘的输入
标准输出(STDOUT)-1 默认输出到终端窗口
标准错误(STDERR)-2 默认输出到终端窗口
I/O重定向:改变默认位置
STDOUT和STDERR可以被重定向到文件
命令 操作符号 文件名
支持的操作符号包括:
> 把STDOUT重定向到文件
2> 把STDERR重定向到文件
&> 把所有输出重定向到文件
> 文件内容会被覆盖
set -C 禁止将内容覆盖已有文件,但可追加
>| file 强制覆盖
set +C 允许覆盖
>> 原有内容基础上,追加内容
ls /erro /boot >fb.txt 2>&1
ls /erro /boot 2>fb.txt >&2
ls /erro /boot 2>&1 > fc.txt
(ls /erro /boot 2>&1) > fc.txt
(uanm -r;hostname) > fc.txt
标准输入的重定向 <
bc < bc.txt
cat < bc.txt
cat < bc.txt > bc2.txt
cat < bc.txt > bc.txt 清空
cat < bc.txt >> bc.txt 无限递归
八、转换和删除字符
tr 转换和删除字符
tr [OPTION]... SET1 [SET2]
选项:
-c –C --complement:取字符集的补集
-d --delete:删除所有属于第一字符集的字符
-s --squeeze-repeats:把连续重复的字符以单独一个字符表示
-t --truncate-set1:将第一个字符集对应字符转化为第二字符集对应的字符
[:alnum:]:字母和数字 [:alpha:]:字母 [:cntrl:]:控制(非打印)字符
[:digit:]:数字 [:graph:]:图形字符 [:lower:]:小写字母
[:print:]:可打印字符 [:punct:]:标点符号 [:space:]:空白字符
[:upper:]:大写字母 [:xdigit:]:十六进制字符
补充
原文地址:https://blog.51cto.com/14230286/2363970