基础命令学习

hexdump -C f1   查看文件里面的16进制的显示,

linux和win的记事本二进制格式是不同的,这样就会有些人把在windwos上面写好的脚本文档,直接移动到linux上面来,shell脚本没有问题,但是总是报错,这就是二进制格式不同造成的,我们可以通过一个命令doc2unix来在不同系统上面转换文档

[[email protected] tmp]# cat abc   这个abc是在linux上面建立的正常文档

a

b

c

我们通过hexdump可以查看文件里面每一个字符的16进制的显示信息

[[email protected] tmp]# hexdump -C abc

00000000  61 0a 62 0a 63 0a                                |a.b.c.|

00000006

这里的0000006代表的是偏移量  其中61是a  62是b 63是c 其余的0a代表换行符

下面将这个abc转移成windows上面正常的txt文档

使用命令 unix2dos abc  这个命令明显可以看得出unix to dos 由linux转移成windows格式的文件

[[email protected] tmp]# unix2dos abc

unix2dos: converting file abc to DOS format ...

[[email protected] tmp]# hexdump -C abc

00000000  61 0d 0a 62 0d 0a 63 0d  0a                   |a..b..c..|

00000009

同一个文档,windows格式的ASCII文件明显与linux不同

同样上面的一串0以及尾部的9代表的是偏移量,可以看出windows上面的ASCII还是有很大不同的,尤其是换行,windows上面是 od oa 的

如果想把win上面的文件转译成linux上面的ASCII上面的文档

使用命令 dos2unix 明显可以看出dos to unix

[[email protected] tmp]# dos2unix abc.txt

dos2unix: converting file abc.txt to UNIX format ...

windows和linux装换的文本工具:上面我们已经说了是

unix2dos  和 dos2unix

之后通过hexdump -C Filename 查看字符格式

reset   当屏幕出现乱码的情况的时候,执行这个命令可恢复正常

快捷键:

crtl+l 清屏

crtl+c 取消命令的执行

crtl+a 将光标移动到命令的最前面

crtl+e      将光标移动到命令的最后面

crtl+u      删除光标前的多有字符

crtl+k      删除光标后的所有字符

crtl+b      左移动一个位置

crtl+f      光标向右移动一个字符

esc 松手 按b  向左移动一个单词

esc 松手 按f   向右移动一个单词

图形化的终端的快捷键

ctrl+shift +t   打开一个新的终端

w   退出当前一个

q   退出所有终端

crtl+PgUp/PgUn  切换到下一个/上一个标签页

crtl+shift+c   复制选中文本

crtl_shift+v   粘贴到光标后

文件管理   www.pathname.con/fhs下载帮助文档

文件系统是文件在系统上的存方式,是硬盘存储数据的范式

fat 不支持单个文件大于4G,不支持加密、压缩

ntfs 支持

文件结构 (文件分成结构 LSB: linux standard base)

FHS文件系统分层标准

/ 整个文件系统的起始

/bin 系统最基本的程序,二进制程序

/sbin 管理员的基本程序

/boot 存放启动程序,入内和vmlinuz..

/dev    设备   b块文件,摸得着的设备,具有缓存

c  字符设备,线性,顺序读写,是逻辑的设备,没有缓存

/etc    配置文件

opt    /opt相对应的配置文件

X11     桌面

sgml     标记语言

/lib    库,程序运行时需要的共享库,在7上是lib64

/media  移动设备挂载点

/mnt   临时文件系统的挂在点

/opt    第三方软件的安装目录

/srv    服务器的数据

/tmp    临时文件,系统自动清除

/usr    小系统,大部分数据在这里面,

bin   保证系统拥有完整功能而提供的应用程序,在7版本上二进制程序是这个位置,/bin软连接到这个位置

sbin  /sbin软连接到这个位置,管理的二进制程序

lib   32位使用的库 /lib 软连接到这个位置

lib64  只存在64位系统上面 /lib64软连接到这个位置

include  C程序的头文件(header files)

share    结构化独立的数据  如doc,man等

local   第三方程序安装位置,其下的目录有:

bin

sbin

lib

lib64

etc

share

以上都是第三方的软件安装生成的

/var    变化数据,web网页等

cache 应用程序缓存目录

local 为/usr/local下的应用程序存储可变数据

lock 锁文件

log 日志

opt 为/opt下的应用程序存储可变数据

run 运行相关进程数据,常存储进程pid文件

spool   应用程序数据池

tmp     保存系统两次重启之间产生的临时数据

/home

假目录文件

/proc  内存中的一些信息,内存中的分区表,大小为0,是模拟的

process的简称

cat /proc/cpuinfo    cpu信息

cat /proc/swaps     交换分区

cat /proc/partions  分区

/sys   存放硬件相关的信息,

/selinux  权限加强linux,安全策略相关的信息存储位置,root是王,也要在这个法律的规范下活动

在7上/usr不可以做挂载点

/usr/sbin,   bin是不可以挂载的,是系统启动的过程中就要用的,/usr里面有bin,因此也不支持挂载

版本6和版本7的目录变化为/bin /sbin /lib /lib64

都跑到/usr的目录下面去了

lrwxrwxrwx.   1 root root    7 2月  26 02:04 bin -> usr/bin

dr-xr-xr-x.   4 root root 4096 2月  26 02:09 boot

drwxr-xr-x.  20 root root 3200 5月  13 16:54 dev

drwxr-xr-x.  75 root root 8192 5月  14 02:27 etc

drwxr-xr-x.   5 root root   37 5月  10 22:38 home

lrwxrwxrwx.   1 root root    7 2月  26 02:04 lib -> usr/lib

lrwxrwxrwx.   1 root root    9 2月  26 02:04 lib64 -> usr/lib64

drwxr-xr-x.   2 root root    6 8月  12 2015 media

drwxr-xr-x.   2 root root    6 8月  12 2015 mnt

drwxr-xr-x.   2 root root    6 8月  12 2015 opt

dr-xr-xr-x. 360 root root    0 5月  13 16:54 proc

dr-xr-x---.   4 root root 4096 5月  14 02:43 root

drwxr-xr-x.  22 root root  620 5月  13 16:54 run

lrwxrwxrwx.   1 root root    8 2月  26 02:04 sbin -> usr/sbin

drwxr-xr-x.   2 root root    6 8月  12 2015 srv

dr-xr-xr-x.  13 root root    0 5月  13 16:54 sys

drwxrwxrwt.  12 root root 4096 5月  14 03:21 tmp

drwxr-xr-x.  13 root root 4096 2月  26 02:04 usr

drwxr-xr-x.  19 root root 4096 5月  13 16:54 var

linux上的应用程序的组成部分

二进制程序

/bin

/sbin

/usr/bin

/usr/sbin

/usr/local/bin

/usr/local/sbin

库文件:

/lib

/lib64

/usr/lib

/usr/lib64

/usr/local/lib

/usr/local/lib64

配置文件:

/etc

/etc/Diectory

/usr/local/etc

帮助文件:

/usr/share/man

/usr/share/doc

/usr/local/share/man

/usr/local/share/doc

linux下的文件类型

- 普通

p 管道

l   软连接

b    块

c    字符

s    套接字

d    目录

使用file File_name  去查看文件的类型

定义文件,文件名命令规则

包括路径在内文件命长对为4095个字节,用/分隔的路径不能超过255个字节

不能用 /  作为文件里面的名字字符

文件名一般区分大小写,这是和文件系统有关的xfs为区分大小写(fat不区分大小写)

当文件名就叫 -a 的时候,就需要使用绝对路径或者相对路径了

df -T 显示样式

[[email protected] ~]# df -T

文件系统                类型        1K-块   已用     可用 已用% 挂载点

/dev/mapper/centos-root xfs      18307072 922400 17384672    6% /

devtmpfs                devtmpfs   490452      0   490452    0% /dev

tmpfs                   tmpfs      500668      0   500668    0% /dev/shm

tmpfs                   tmpfs      500668   6828   493840    2% /run

tmpfs                   tmpfs      500668      0   500668    0% /sys/fs/cgroup

/dev/sda1               xfs        508588 125600   382988   25% /boot

tmpfs                   tmpfs      100136      0   100136    0% /run/user/0

pwd 显示当前用户工作的目录

PWD    当前的共组目录

OLDPWD   上一个工作目录

相对路径

绝对路径

cd ~wang  到隔壁老王家

ls  list列出目录内容

-r    按照字母逆序显示

-1     数字1,一个文件一行显示

-S     大S排序,以文件大小排序

-U     就是按照文件存储的顺序来排序

-u     按照修改时间排序

-X     按照文件的扩展名来排序

-i     显示inode的数量

-ld    目录和符号链接的信息

-R      递归显示

-a     显示隐藏文件

-l     显示更多的信息

文件通配符

*      0或多个任意字符

?     1个任意字符,必须有一个字符,不能为空

~zou    zou的家目录

~+     当前目录,相当于.

~- 前一个目录

[1-3]    1到3的一个个数

[13]     1或者3

[12][34] 笛卡尔乘积,但是{12}{34}不用的是,后者必须要有,前者没事

[a-z] aAbBcCdD....xXyYz 在这里面是这样排序的大写和小写字母,少一个Z

[A-Z]   AbBcC.....yYzZ   少一个a

预定义的字符:  man 7 glob

[:digit:] 数字

[:lower:]   小写字母

[:upper:]   大写字母

[:alpha:]    字母

[:alnum:]    字母和数字

[:space:]    空格

[:punct:]    标点符号

元数据netadata:

在系统当中记录文件的,使用ll显示出来的东西就是元数据:权限,所有者(数主,属组),文件大小,创建时间

文件元数据的时间

--atime    访问时间,文件最后一次读时间,默认读取,如使用了cat命令查看

--ctime 状态更改时间,文件属性,文件空间大小,文件名等 如chmod chown mv改名,移动位置,

--mtime 修改改动时间,就是利用vim echo sed等编辑了这个文件,使这个文件里面的内容与以前不一样,

当我们使用vim编辑了文件,它的atime,ctime和mtime会同时发生变化,atime在你进入编辑界面发生变化,之后编辑完成之后,保存退出ctime和mtime再变化,如果只是vim进去,直接q退出,那么只有atime变化

当使用echo 增加文章里面的内容,只有ctime和mtime变化

web服务器上面禁用--atime可以提高近5%的性能

默认显示文件内容的时间,

ll --time=atime /etc/issu  这里的atime可以换成另两个

state File_name 查看文件的三个时间

[[email protected] ~]# ll --time=atime test

-rw-r--r--. 1 root root 0 5月  13 19:46 test

[[email protected] ~]# stat test

File: "test"

Size: 0         Blocks: 0          IO Block: 4096   普通空文件

Device: fd00h/64768d Inode: 134651      Links: 1

Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)

Access: 2016-05-13 19:46:57.714519785 +0800

Modify: 2016-05-13 19:46:57.714519785 +0800

Change: 2016-05-13 19:46:57.714519785 +0800

touch 如果文件名没有存在将会新建文件,如果文件存在,将会把3个时间给刷新了

-a 仅修改atime   ctime也会同时变化

-m 修改mtime     ctime也会同时变化

-t  [[CC]yy]MMDDhhmm[.ss]  时间格式

-c  如果文件不存在,不会创建,只刷新那三个时间

touch -t 201608081000.30 --time=mtime test   年月时分秒 修改test文件的mtime

> file_name  新建一个文件,会刷新时间,如果文件存,则会覆盖

>> file_name  可以新建一个目录,不会刷新时间,慎用,文件存在就附加

cp  copy文件

格式:

cp  option [-T] source dest

cp /etc/issue /mnt/a

cp option source directory

cp /etc/issue /tmp/a /mnt

cp option -t directory source

cp -t /mnt /etc/issue /tmp/a  源和目的反过来

src是文件,如果目标不存在,新建dest,并将src中内容填充至dest中

如果目标文件存在,

1.dest为文件,这个时候源只能有一个,src中的内容会覆盖dest当中的内容,当然这个需要再经过你同意,敲了y之后才会覆盖,当然普通用户不会,你可以处于安全考虑使用cp -i 命令别名

2.如果dest是个目录,的dest下面新建一个src一样的文件名的文件,并将src中内容填充进去,这时源文件可以是多个

时间: 2024-10-11 06:42:55

基础命令学习的相关文章

基础命令学习总结

基础命令总结: 1.获取帮助命令: help man info 2.日期时间命令: date hwclock cal 3.系统管理命令: shutdown halt reboot poweroff bash tty 4.文件管理命令: cd type file echo which  whereis whatis dirname basename makewhatis mkdir pwd      touch 基础命令学习总结,布布扣,bubuko.com

linux基础命令学习(六)DHCP服务器配置

工作原理:        1.客户机寻找服务器:广播发送discover包,寻找dhcp服务器        2.服务器响应请求:单播发送offer包,对客户机做出响应.提供客户端网络相关的租约以供选择        其中服务器在收到客户端的请求后,会针对客户端的mac地址与本身的设定数据进行一下工作:            a.到服务器的登录文件中寻找该用户之前曾经使用过的ip,若有且该ip目前没有人使用,这提供此ip为客户机            b.若配置文件中有针对该mac提供额外的固定

linux基础命令学习(七)samba服务器配置

samba有五种安全级别,它们分别是: share:不需要samba账户就可登陆samba服务器      user:需要添加samba账户才可以登陆samba服务器      server:由另外一台samba服务器来对用户进行身份验证.       domain:把samba服务器加入到NT域,由NT的域控制器来进行身份验证.      ADS:Active Directory Service,活动目录服务,它是samba3.0中新增的身份验证方式.采用ADS验证方式,samba服务器集成到

张明贵-Linux基础命令学习-5

[让总结成为一种习惯] pwd   打印当前工作目录 print working directory pwd -L pwd的默认参数是-L,执行pwd和执行pwd -L结果是相同的,其实使用的是环境变量 PWD echo $PWD pwd pwd -L pwd -P 打印物理目录,没有任何符号链接 当我们切换到 /etc/init.d目录下 实际上和切换到 /etc/rc.d/init.d  目录下是一样的 执行效果一样 mkdir  创建目录 make directory mkdir -p /

mysql基础命令学习笔记

这里不会涉及一些mysql数据库安装之类的知识,但是会将自己学习以及使用mysql一些最常用的mysql语句总结到本篇文章,作为自己的学习记录和笔记.基本的环境为CentOS 6.5 数据库为mysql5.6.30. 1.启动和停止Mysql服务 1.  /etc/init.d/mysql restar   #重启 2.  /etc/init.d/mysql stop     #停止 3.  /etc/init.d/mysql start    #启动 4.  /etc/init.d/mysql

Linux目录结构、bash的基础命令学习

日期: 2015年08月23日 Linux目录结构 LSB(Linux StandardsBase)是一套核心标准,它保证了LINUX发行版同LINUX应用程序之间的良好结合规定了一系列标准,其中包括文件系统层级结构标准(FHS Filesystem Hierarchy Standard) Linux系统根目录下有众多子目录,这些目录都参照了FHS协定 / ├── bin ├── boot ├── dev ├── etc ├── home ├── lib ├── lib64 ├── lost+f

linux基础命令学习(一)

pwd 输出当前工作路径tree 以树状图列出目录的内容ctrl+c 取消命令的执行clear 清空屏幕ls 列出文件目录 蓝色是目录,白色是普通文件alias cls=clear 别名终端:本地终端.远程虚拟终端tty:哪个终端登录Alt F1切换终端登录w:查看多少人登录id/groups以.开头的为隐藏文件man 帮助手册ls -l长列表格式ls -lh,-li索引 ls -ld 看目录本身红色背景:特殊权限的命令淡蓝色文件:链接符号绿色:可执行文件红色:压缩包du -sh看文件大小his

linux基础命令学习之mkdir(3)

mkdir 1.命令格式 mkdir [选项] 目录... 2.命令功能 通过 mkdir 命令可以实现在指定位置创建以 DirName(指定的文件名)命名的文件夹或目录.要创建文件夹或目录的用户必须对所创建的文件夹的父文件夹具有写权限.并且,所创建的文件夹(目录)不能与其父目录(即父文件夹)中的文件名重名,即同一个目录下不能有同名的(区分大小写). 3.命令参数和实例 -m, --mode=模式,设定权限<模式> (类似 chmod),而不是 rwxrwxrwx 减 umask -p, --

linux基础命令学习之cp(4)

cp 1.命令格式 用法: cp [选项]... [-T] 源 目的 或:cp [选项]... 源... 目录 或:cp [选项]... -t 目录 源... 2.命令功能 将源文件复制至目标文件,或将多个源文件复制至目标目录. 3.命令参数和实例 -a, --archive    等于-dR --preserve=all --backup[=CONTROL    为每个已存在的目标文件创建备份 -b                类似--backup 但不接受参数 --copy-content