1.学习入门 计划10天
这个必须mark一下,就是昨天,整理了多方面的消息,买了腾讯云的低配版的云服务器,第一次感受自己离世界上的先进技术又进了一步,之前老听说什么Amazon 云,自己的是乞丐版的云,不过那也是云哇,期待拨开云看到新世界!!
2. 学习名词
1,prompt 命令提示符
2,command 格式 option 选项(短长选项) , arguments(指定命令的)
3, Authentication 认证,Authorization 授权,Audition 审计
ls
-l:长格式
文件类型:
-: 普通文件(f);
d:目录文件;
b:块设备文件;
c:字符设备文件;
l :符号链接文件(symbolic link file);
p: 命令管道文件;
s:套接字文件;
文件权限:9位,3个一组,rwx(读、写、执行)
文件硬链接的次数
文件的属主(owner)
文件的属组(group)
文件的大小(default:字节)
时间戳:
访问:access
修改:modify: 文章内容被修改,
改变: change,元数据,metadata,
-h:做单位换算
-a: 显示以.开头的隐藏文件
. 当前目录
..父目录
-A
-d:目录自身属性
-i:显示文件缩影节点 index node
-r:逆序显示
-R:di'gui
cd: change directory
cd 不加任何字符,进入home 目录,可以有很多权限,cd~ username 可以进入任何一个用户的home目录,权限只仅限于管理员
cd - 在当前目录和前一次目录切换
type: 命令类型
内部命令:builtin
外部命令:在某个文件夹下与名称对应的可执行文件
环境变量:命名的内存空间,(我自己理解就是定义某一个存贮空间所赋值的变量),hash 可以查看缓存命令,速度是O(1),path:用冒号隔开的路径;
date:管理时间
linux:rtc 系统时间,date,hardwareclock,hdclock 硬件时间;
获得命令使用帮助
help COMMAND,内部命令
COMMAND --help
命令手册:mannual
info COMMAND
man COMMAND
分章节的:1,用户命令;2,系统调用;3,库用户;4,特殊文件(设备文件);5,文件格式(解释配置文件的语法);6,游戏;7,杂项(miscellaneous);8,管理命令(/sbin)
[] 表示可省略,| 表示多选一, <> 表示必选,... 可选多次,{} 分组 ,没有特殊意义
NAMES 命令的名称及功能;SYNOPSIS 用法说明,包括可用的选项;DESCRIPTION:详尽描述;FILEs:命令相关的文件;
翻屏:
向后翻一屏:space;向前翻一屏:b;向后翻一行:ENTER;向前翻一行:k;
查找:
/KEYWORD 向后; ?KEYWORD 向前; n下一个,N前一个,注意方向,屏幕第一个表示当前位置;q 退出;
FORMAT: 练习:
hwclock -w 以系统时间即date 时间为准, -s 以硬件时间为准; 使用方法: hwclock -w;如果不会的话 就用, man hwclock
文档 usr/share/doc
3.linux 根文件系统详解
- 文件系统 rootfs 根文件系统
/root 系统启动相关的文件 如 内核,initrd 以及grub
/dev 设备文件
设备文件 (没有大小,是数据访问的入口,元数据)
块设备:随机访问数据块
字符设备:线性访问,按字符显示
设备号:主设备号(major) 次设备号(minor)
/etc 配置文件(纯文本文件)
/home 默认 /home/USERNAME
/root 不建议在root 目录下工作 重要,管理员的家目录
/lib 库文件
/lib/module 内核模块文件
静态库:.a
动态库:.so(shared object)
(动态库和静态库的区别是动态库是相互依赖的库,静态的是一个完整的库,可以随时移动)
/media 挂载点目录 把cd 关联到具体文件,比如u盘,
/mnt 挂载点目录 格外的临时文件系统(FHS规定)
/misc 杂项
/opt 可选目录 第三方程序的安装目录
/proc 内核映射文件,内核的工作状态,伪文件系统, 性能监控 **重要但难理解**
/sys 硬件设备的管理 硬件设备的属性映射
/tmp 临时文件 /var/tmp
/var 可变化的文件
/bin 可执行文件,用户命令
/sbin 管理命令
/usr universe shared read-only
/usr/bin 跟正常基本功能相关的,区别于上边的 /bin 是操作系统启动用的命令
/usr/sbin 与上边类似 ,是正常功能相关的,区别于/sbin 是操作系统相关的
/usr/lib
/usr/local
/usr/local/bin
/usr/local/sbin
/usr/local/lib 第三方相关的安装软件;如果删除对整个系统不影响,如果删除上边的两组,则影响系统
文件命名规则:
1.不超过255个字符
2.不能使用/ 当文件名
3.严格区分大小写
相对路径(从目前的位置开始) 绝对路径(从跟开始)/
比较windows
目录管理:ls cd pwd mkdir(makedirectory)tree(看目录树);
- p 父本目录,指没有分支的情况下创建目录
-v verbose
同时创立多个目录:mkdir -pv /mnt/test/{x/y,m} (命令行展开) mkdir /mnt/test/{a,d}_{b,c} -pv
删除目录 rmdir 同样可以用上边的副本
文件夹的管理 创建和删除
touch a 创建文件夹 选项:-a -m -t -c;
stat rm 选项 -i -f -r(嵌套)rm -fr / 删除根目录及根目录下的所有文件;
字节:八位,用Unicode码,进行国际统一;文本编辑器 处理ASC码;nano 文本编辑,文件不用别名 \ls
设备管理:挂在设备,删除设备
软件管理
网络管理
4.常用名词简写
- GUI graphic user interface
- X-window X 表示超级的意思,比如X 战警
- CLI command line interface
- IDE integrated development environment
- dll: dynamic link library
- dso: dynamic shared object
- 一个完整的操纵系统:kernel 内核,library ,shell
- pwd: print working directory
遗留问题:1,文件名是不是文件的数据,是不是文件本身的数据,文件名存在哪,文件的数据存在哪;2,FHS 文件系统;3,蓝色表示目录属性,一共有6个颜色,绿色表示可执行文件;4,转义,逃逸;5,练习:单独获取 时间的年月日,秒,date format **date +%d**,**date +this year is %d**,**%n, 可以换行**,**date +%F** ,**date +%H:%S** 或**date +%H-%S**
练习
1,echo 是内部命令还是外部命令?
2,其作用?如何将“This year is 2013. Today is 26”显示为两行?
3,printf 是内部还是外部命令,其作用,如何将上述显示为两行?printf This year is 2016.\n 和echo 的区别是默认不换行;
2,脚本以后常用的一个命令 echo -n
learning time:6h