Linux基础总结

目录和文件

查看目录
pwd #显示目前所在目录
ls -al

进入目录
cd #变换目录

如 cd /etc

查看文件
cat 文件名
-n:打印出行号(包括空白行)
-b:列出行号,空白行不标号
nl #添加行号打印

more #可翻页显示
空格键:向下翻一页
Enter:向下翻一行
/字符串:向下搜索【字符串】
q:离开

less #一页一页翻动<span style="color:#333333;"></span>

目录或文件的复制

cp [参数] 源文件 目标文件
-a:相当于-pdr的意思
-d:若源文件为链接文件的属性,则复制链接文件属性而非档案本身
-i:若目标文件已经存在,在覆盖式会先询问动作的进行
-p:连同档案的属性一起复制过去,而非使用默认属性(备份常用)
-r:递归持续复制,用于目录的复制行为(常用)

目录或文件的删除

rm [ -fir ] 档案或目录
-f:强制删除
-i:互动模式,在删除前询问操作者
-r:递归删除(非常危险的选项!!!)

目录或文件的移动
mv [ -fiu ] 源文件 目标文件
-f:force强制,若目标以存在,不询问直接覆盖
-i:若目标文档已经存在,就会询问是否覆盖
-u:若目标文档已存在,且源文件source比较新,才会更新

当前活动目录:工作目录
当前用户家目录:就是当前用户的目录,比如root用户的家目录是/root,zheng用户的家目录是/home/zheng

文件类型
- 普通文件
d 目录文件
l 链接文件
s 套接字文件
b 块设备文件,二进制文件
c 字符设备文件
p 命令管道文件

文件权限和文件夹权限
r :read
w:write
x:execute

文件查看与编辑
文件查看
touch
cat
more
less
head
tail
vi
vim

文件编辑
vi
echo


查看文件头
head #取出前几行(默认10行)

查看文件尾
tail #去除末尾几行

vi的三种模式
命令行模式
插入模式
末行模式

vi对文件的打开、输入和保存
vi filename #打开文件
进入插入模式 i
esc
:
wq(保存并退出)
q(没有修改文件的前提下直接退出)
q! (不保存并强制退出)


vi光标移动(命令行模式):
0 #光标移动到行首
$ #光标移动到行末
gg #移动到首行
G #光标到末行(4G :光标移动到第四行)
H #光标到当前屏幕的第一行
L #光标到当前屏幕的最后行
M #光标到当前屏幕的中间行
w或W #向右移动到下一个单词首
e或E #下一个单词词尾
b或B #上一个单词首
x 删除光标处的字符  (3x 删除从光标所在位置开始向右的3个字符)
X 删除光标前的字符  (3X 删除从光标前那个位置开始向左的3个字符)
d$ 删除光标位置到行末
5dd 剪切5行
4yy 复制4行
p 向下粘贴
P 向上粘贴
u 撤销
U撤销一次
v+ 方向键 可以从当前光标处各方向选择字符或行
/***(默认向下搜索)        n查找下一个***
?***  向上搜索          N(向上搜索)
ctrl + g 显示文本信息

文本插入模式:
i #当前光标处插入
I #当前光标后一位插入
a #在光标后追加
A #行尾插入
o #向下新建一行插入
O #向上新建一行插入

v 上下移动之后  选中
y 复制
p 粘贴

文本的搜索和替换:
:s/123/abc/g #将一整行中的123用abc替换
:%s/123/abc/g #全局替换
: n #跳到第n行
:$ #跳到最后一行
:set number #显示行号

磁盘
查看磁盘
fdisk -l

命令挂载磁盘
mount -t etx3 -o rw /dev/sdb1 /mnt/333

分区
/dev/sda1 /dev/sdb1 #分区命名

格式化分区
mkfs.ext3 /dev/sdb1

永久挂载磁盘
/etc/fstab<span style="color:#333333;"></span>

网络
命令  网络配置
ifconfig 网卡名 IP netmask 255.*.*.* 
route add default gw 网关

文件 网络配置
/etc/sysconfig/network-scripts/ifcfg-ethN
主要信息:
DEVEICE=网卡名
ONBOOT=开机自动加载(yes/no)
BOOTPRO=启动协议(static静态/dhcp动态)
IPADDR=IP地址
NETMASK=子网掩码
GATEWAY=网关

如何配置tcp数据转发(ip_forward)?
echo “ 1” > /proc/sys/net/ipv4/ip_forward

如何配置DNS地址?
echo “nameservice DNS”>>/etc/resolv.conf

配置静态路由
route add -net IP地址 netmask 子网掩码 dev 网络接口

nslookup #查询域名对应的IP
dig #显示域名的高级数据
finger #查询用户的信息,通常会显示系统中某个用户的用户名、主目录、停滞时间、登陆时间、登录shell等信息
ping #测试网络主机是否工作
netstat#用于查询各种网络相关信息。显示网络连接、路由表和网络接口状态等信息,可以让用户得知目前都有哪些网络连接在运行。
-a (all) 显示所有选项,默认不现实LISTEN相关
-t (tcp)进现实tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部,这里我理解为IP
-l 仅列出有在listen(监听)的服务状态

用户管理
添加用户 useradd
添加组 groupadd
初始用户组 有效用户组

-g
-G

删除用户
userdel -r (删除用户家目录)用户名


用户相关配置文件

/etc/passwd 用户名:用户密码:用户ID:组ID:注释:家目录:shell

/etc/group存储有关本地用户组的信息
1)groupname GID到名称的一种映射,组名
2)password 保存密码的位置
3)GID 组ID
4)user 组成员

/etc/shadow

sudo

添加sudo用户  在visudo中(root用户权限才能运行)

chmod u g o r+w+x (4 2 1)文件或目录

chown 
改变拥有者和群组    chown mail:mail log2012.log

改变文件拥有者和群组    chown root: log2012.log

改变文件群组  chown :mail log2012.log

改变指定目录以及其子目录下的所有文件的拥有者和群组   chown -R -v root:mail test6


进程查看/管理

查看当前所运行的程序  top ps
查看当前所有root运行的程序 ps aux | grep root
结束一个进程

kill -9  进程号 强制结束一个进程

结束所有相同名字的进程  
killall +进程名

计划任务
查看当前计划任务 crontab -l

普通用户添加计划任务 crontab -e
     crontab -e -u 普通用户名
root用户给普宁共同用户添加一条计划任务  vim /etc/crontab

删除计划任务 /etc/crontab 下删除   -r删除那个进程

计划任务添加格式 分 时  日 月 周 命令


压缩包解压/压缩

压缩所有/etc下的文件,到/tmp/etc.tar.gz
tar -zcvf /tmp/etc.tar.gz /etc

解压/tmp/etc.tar.gz? 
tar -zxvf /tmp/etc.tar.gz

压缩包压缩集中压缩格式
gzip   -z
bzip2  -j
cropress  -Z

不解压,查看/tmp/etc.tar.gz压缩包里的所有文件
tar -ztf /tmp/etc.tar.gz

软件的安装
集中软件安装的方法
rpm yum
apt-get
wget

yum
yum search 软件名
yum install 软件名
yum list installed
yum remove 软件名

rpm
-ivh:安装显示安装进度  --install --verbose --hash
-Uvh:升级软件包 --Update
-qpl:列出RPM软件包内的文件信息(Query Package list)
-qpi:列出RPM软件包的描述信息(Query Package install package(s))
-qf:查看指定文件属于哪个RPM软件包[Query File]
-Va:校验所有的RPM软件包,查找丢失的文件[View Lost]
-qa:查看所有安装的软件
-e:删除包

手动安装软件
./configure(生成makefile文件)
执行make进行编译
执行make install进行安装,调用makefile中的代码块,把编译出来的二进制文件,库,配置文件放到相应的目录下
最后make clean清除编译结果

时钟
硬件时钟系统:
主板上的时钟设置
hwclock --show

系统时间 
date

时间戳 
自1970年1月1日以来的秒数

查看硬件时钟系统时间

hwclock --show

相互同步
-systohc #将硬件时钟调整为与目前的系统时钟一致  
-hctosys #将系统时钟调整为与目前的硬件时钟一致

联网同步时间
ntpdate time.nist.gov

系统信息及运行状态
df命令:
用来检查linux服务器的文件系统的磁盘空间占用情况。可以获取磁盘被占用了多少空间以及目前还剩下多少空间信息。
-a 全部文件系统列表
-h 方便阅读方式显示
-H 等于-h 但是计算方式1k-1000
-i 显示inode信息
-k 区块为1024字节
-l只显示本地文件系统
-m 区块为1048576字节
--no-sync 忽略sync命令
-P 输出合适为POSIX
--sync 在取得磁盘信息前,先执行sync命令
-T 文件系统类型

du命令: 
对文件和目录对磁盘空间的使用情况的查看

iostat:
查看网卡、CPU、磁盘等设备信息。


/proc目录:
存放各种数据映像, proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。主要存放一些系统内核的配置文件。
/proc/cpuinfo 本机CPU的相关信息
/proc/meminfo 本机内存及交换分区的使用信息
/proc/modules 本机已安装的硬件模块信息
/proc/mounts 本机已经挂载上的设备信息

服务与开机自启动

服务:后台运行的一些程序
服务启动/停止
service 服务 start/stop

httpd 服务开机自启动设置
chkconfig --level 345 httpd on

取消iptables服务开机自启动
chkconfig --level 345 iptables off

      等级0表示:表示关机
      等级1表示:单用户模式
      等级2表示:无网络连接的多用户命令行模式
      等级3表示:有网络连接的多用户命令行模式
      等级4表示:不可用
      等级5表示:带图形界面的多用户模式
      等级6表示:重新启动


sed 
主要以行为单位进行处理,将数据增删改查选取等。。。
选项与参数:
-n :使用安静模式。在一般sed用法中,所有来自STDIN的数据一般都会被列出到终端上。但是如果加上-n 参数后吗,则是只有sed特殊处理的那一行(或动作)才会被列出来。
-e :直接在指令模式上云行,sed动作的编辑;
-f :直接将sed的动作写在一个文件内,- f filename 则可以运行 filename 内的sed动作;
-r :sed的动作支持的是延伸正规表达发的语法。(默认是基础正则表示法语法);
-i :直接修改读取的文件内容,而不是输出到终端。

动作说明:[ n1[ ,n2 ] ] function
n1,n2 :不见得hi存在,一般代表【选择进行动作的行数】,举例来说,如果我的动作是需要在10到20行之间进行的,则【10,20[ function ]】
function:
a :新增,新增的内容在目前的下一行出现(目前的下一行);
c  : 取代,c的后面可以接字串,这些字串可以取代n1,n2之间的行
d :删除,d的后面通常不接任何东西;
i : 插入,i的后面可以接字串,而这些字串会在新的一行出现(目前的上一行)
p :列印,即将某个选择的数据印出。通常p会与参数 sed -n 一起运行
s :取代,通常此动作可以搭配正则表达式

文件/文件夹查找
find locat whereis which

find  -name 文件名

文件名权限

find 文件路径 -perm 权限 | xargs ls -al
find 目录 -perm 权限 -exec ls -al{} \;

文件内容匹配查找

nl 文件路径 | grep 内容

显示/etc/passwd包含root的行

cat /etc/passwd | grep root

awk

强大的编程搜索工具

例:cat /etc/passwd | awk -F :   {print $1}

参数:
-F z指定分隔符
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值