linux/Unix基本命令(一)

 关于前面写了一些比较复杂的命令,或许有些人会觉得用不到,那么我今天就写一写能用到,并且在Linux和Unix 基本上是通用的命令。不过像我昨天写的文件管理命令也会继续写下去,后续还有一些文档编辑的命令、文件传输的命令、磁盘管理、磁盘维护、网络通讯、系统管理、系统设置、备份压缩、设备管理10大板块。请大家耐心等待。。。
 话不多说,开始今天的正本

**1.Linux的基本原则**:
        1)、由目的单一的小程序组成;组合小程序完成复杂任务;
        2)、一切皆文件;
        3)、尽量避免捕获用户接口;(尽量不和用户进行交互,就是一个程序一但开始运行,就不需要用户进行任何操作,如ls命令,ifconfig命令)
     4)、配置文件保存为纯文本格式;
** 2.命令形式   **
命令格式:
命令 选项 参数
选项:
短选项: - 输入快捷简单
多个选项可以组合:-a -b = -ab
长选项: -- 意思明了

参数:命令的作用对象
命令分为内部命令和外部命令
内部命令是系统shell自带的命令
外部命令是安装其他的程序产生的命令。
可以通过type 查看命令是内部还是外部命令: type 命令关键字
帮助的方式:
1、内部命令可以通过:help 命令 例子: help cd
2、外部命令可以通过:命令 --help 例如:ls --help
3、可以通过man命令获取命令帮助: 例如: man cd
4、可以通过info命令获取命令帮助: 例如: info cd
5、通过百度\google等搜索引擎 可以寻求帮助
6、可以通过下载一个linux的中文命令大全
3.命令举例:ls
ls -l:长格式

文件类型: 可使用file命令查看
-:普通文件 (f)
d: 目录文件
b: 块设备文件 (block)就是存储数据以供系统存取的接口设备,简单而言就是硬盘
c: 字符设备文件 (character)即串行端口的接口设备,例如键盘、鼠标等等
l: 符号链接文件(symbolic link file)
p: 命令管道文件(pipe)是一种特殊的文件类型,它主要的目的是,解决多个程序同时存取一个文件所造成的错误
s: 套接字文件(socket)这类文件通常用在网络数据连接。
我们可以启动一个程序来监听客户端的要求,客户端就可以通过套接字来进行数据通信。
最常在 /var/run目录中看到这种文件类型。
文件权限:9位,每3位一组,每一组:rwx(读,写,执行), r--
文件硬链接的次数
文件的属主(owner)
文件的属组(group)
文件大小(size),单位是字节
时间戳(timestamp):最近一次被修改的时间(mtime),可以使用stat命令可以看到
访问:access atime 是在读取文件或者执行文件时更改的
修改:modify, mtime 是在写入文件时随文件内容的更改而更改的
改变:change, ctime metadata,元数据 状态改变 是在写入文件、更改所有者、权限或链接设置时随inode 的内容更改而更改的。
-h:做单位转换
-a: 显示以.开头的隐藏文件
. 表示当前目录
.. 表示父目录
-A
-d: 显示目录自身属性
-i: index node, inode
-r: 逆序显示
-R: 递归(recursive)显示
4.文件系统
rootfs: 根文件系统 /

/boot: 系统启动相关的文件,如内核、initrd,以及grub(bootloader)
/dev: 设备文件
设备文件:
块设备:随机访问,数据块
字符设备:线性访问,按字符为单位
设备号:主设备号(major)和次设备号(minor) 主设备号相同的设备是同类设备(使用同一个驱动程序)
通过 cat /proc/devices 命令查看当前已经加载的设备驱动程序的主设备号

例如:ls -l /dev/sr0
brw-rw---- 1 root cdrom 11, 0 4月 1 08:59 /dev/sr0 11为主设备号,0为次设备号

/etc:配置文件

/home:普通用户的家目录,每一个用户的家目录通常默认为/home/USERNAME

/root:管理员的家目录;

/lib:库文件 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。

静态库, .a 静态库的代码在编译过程中已经被载入可执行程序,因此体积较大
动态库, .dll, .so (shared object) 共享库的代码是在可执行程序运行时才载入内存的,在编译过程中仅简单的引用,因此代码体积较小。

/lib/modules:内核模块文件

/media:挂载点目录,移动设备

/mnt:挂载点目录,额外的临时文件系统

/opt:可选目录,第三方程序的安装目录

/proc:伪文件系统,内核映射文件,只存在内存中,它以文件系统的方式为访问系统内核数据的操作提供接口。

/sys:伪文件系统,跟硬件设备相关的属性映射文件,该目录下是全局设备结
构体系,包含所有被发现的注册在各种总线上的各种物理设备

/tmp:临时文件, /var/tmp

/var:可变化的文件

/bin: 可执行文件, 用户命令

/sbin:管理命令

/usr:shared, read-only (Unix System Resource,即Unix系统资源的缩写),不适合放在/bin或/etc目录下的额外的工具
/usr/bin
/usr/sbin
/usr/lib
/usr/local:主要存放那些手动安装的软件
/usr/local/bin
/usr/local/sbin
/usr/local/lib

路径:
绝对路径:凡是以“/”开头的输入路径的方式都是绝对路径
相对路径:凡是以“.”或者“..”开头的都是相对路径

查看服务器基本信息:
cat /proc/cpuinfo 查看cpu信息
cat /proc/meminfo 查看内存信息
free 查看内存使用情况
uptime 监控CPU情况
uname -r 查看内核版本
cat /etc/redhat-release 查看发行版信息
hostname 查看主机名
hostnamectl set-hostname sunday-centos7 设置主机名为sunday-centos7,会更改配置文件,永久生效
ip addr 查看ip信息
ifconfig 查看ip信息
netstat 查看网络连接信息、路由表等,常用来查看端口打开情况
ethtool eth0 查看网卡信息
fdisk -l 查看硬盘信息
df 查看设备挂载信息

5.其它常用命令
目录管理:

ls查看、cd切换目录、pwd查看当前位置、

mkdir创建目录、

mkdir -p 创建多级目录

rmdir删除目录、tree 层次化查看

文件管理:
touch创建文件、stat、file、rm删除、cp复制、mv移动、nano

日期时间:date、clock、hwclock、

cal 打开日历

bc 打开计算器

查看文本:
cat查看文件内容、tac倒序查看文件内容、more分屏显示、less、head显示文件开头、tail显示文件末尾 tail -f
wc 统计文件的行数\单词数\字符数
-l 行数
-w 单词数
-c 字符数
du 统计文件和目录的大小
-s 汇总显示大小
-h 易读形式显示

alias 设置别名 alias a='mount /dev/cdrom /media'

vim : 三种模式:命令模式、插入模式、末行模式

  1. i I a A o O 进入到插入模式
  2. :末行模式 w 保存 q 退出 wq保存并且退出 !强制 三者可以结合使用
    3.命令行模式: dd 删除[剪切] yy 复制 [n]yy 多行复制 p 粘贴
    4.使vim显示行号,在/root 下边创建一个 .vimrc 的文件,使用vim打开,添加set nu ,wq保存退出

命令模式下的操作:
1)、翻页 Page Down或Ctrl+F 向下翻动一整页内容
Page Up或Ctrl+B 向上翻动一整页内容
2)、行内快速跳转 Home键或“^”、数字“0” 跳转至行首
End键或“$”键 跳转到行尾
3)、行间快速跳转 1G或者gg 跳转到文件的首行
G 跳转到文件的末尾行
#G 跳转到文件中的第#行
4)、行号显示 :set nu 在编辑器中显示行号
:set nonu 取消编辑器中的行号显示
5)、删除 x或Del 删除光标处的单个字符
dd 删除当前光标所在行
#dd 删除从光标处开始的#行内容
d^ 删除当前光标之前到行首的所有字符
d$ 删除当前光标处到行尾的所有字符
6)、复制 yy 复制当前行整行的内容到剪贴板
#yy 复制从光标处开始的#行内容
7)、粘贴 p 小写 将缓冲区中的内容粘贴到光标位置处之后
P 大写 粘贴到光标位置处之前
8)、查找 /word 从上而下在文件中查找字符串“word”
?word 从下而上在文件中查找字符串“word”
n 定位下一个匹配的被查找字符串
N 定位上一个匹配的被查找字符串
9)、取消操作 u 按一次取消最近的一次操作
多次重复按u键,恢复已进行的多步操作
U 用于取消对当前行所做的所有编辑
10)、保存退出 ZZ 保存当前的文件内容并退出vi编辑器
11)、可视化块操作界面 ctrl+v 进入块操作界面
上、下、左、右箭头 可以进行选择块
y 复制选择的快
p 粘贴选择的快

末行模式的操作:
1)、保存文件 :w 保存修改的内容
:w /root/newfile 另存为其它文件
2)、退出vi :q 未修改退出
:q! 放弃对文件内容的修改,并退出vi
3)、保存文件退出vi :wq 保存修改的内容并退出
4)、打开新文件 :e ~/install.log 打开新的文件进行编辑
5)、读入其它文件内容 :r /etc/filesystems 在当前文件中读入其他文件内容
6)、替换 :s /old/new 将当前行中查找到的第一个字符“old” 串替换为“new”
:s /old/new/g 将当前行中查找到的所有字符串“old” 替换为“new”
:#,# s/old/new/g 在行号“#,#”范围内替换所有的字符串“old”为“new”
:% s/old/new/g 在整个文件范围内替换所有的字符串“old”为“new”
:s /old/new/c 在替换命令末尾加入c命令,将对每个替换动作提示用户进行确认

转载于:https://blog.51cto.com/13186526/2067124

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值