LINUX学习之路2.docx
- 文档编号:16084267
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:14
- 大小:346.30KB
LINUX学习之路2.docx
《LINUX学习之路2.docx》由会员分享,可在线阅读,更多相关《LINUX学习之路2.docx(14页珍藏版)》请在冰点文库上搜索。
LINUX学习之路2
LINUX学习之路2(2011-07-2022:
54)
分类:
LINUX学习之路
由于昨天系统出问题了,重装系统弄了半夜,所以对昨天欠了一篇啊!
昨天的知识也没用总结今天补上吧!
东西好多好凌乱啊!
学了3天初期感觉是前面的东西好碎,感觉老师似乎是有节奏的在讲,可是回来看的时候怎么感觉乱哄哄的!
还真得整理下!
这也是老是要求我们写博客的一个原因吧,归纳总结自己学过的东西,在这个过程中复习也为以后的复习提供良好的依据!
昨天学了什么呢?
首先复习了下上节讲过的一些问题关于文件和目录的,刚又整理了下在上篇博文里这里就不写了!
看点儿新的东西!
今天老师提供了个很方便的抓图工具,可以插图了!
LINUX下的时间管理:
Linux:
系统时间,硬件时间两种时间
date查看系统时间
clock读到的是硬件(BIOS)时间
hwclock设定时间
-w,系统时间是准确的,把硬件时间设定为与系统时间一致
-s,硬件时间是准确的,把系统时间设定为与硬件时间一致
从上面的插图看出我的系统时间跟硬件时间大大不同,而且都是错的!
这怎么办呢?
我们可以用datemmddHHMMyy.SS设定制定的时间格式是月日时分年.秒
这样就能设置好系统时间了
然后再用hwclock-w就行了
这样就可以了!
好玩吧呵呵这是我们老是的口头禅啊哈哈~!
date+FORMAT例如date"+%H"显示小时
date"+%M"显示分钟
date"+%S"显示秒
date"+%H:
%M:
S%"显示时分秒12:
22:
30
date"+%Y"显示年完整显示2011
date"+%y"显示年简写11
date"+%m"显示月
date"+%d"显示日 19
date"+%D"显示日期07/19/11
这些命令就不附图了我手笨弄太慢了!
!
还有个命令
cal这个能显示日历纯文本的排版挺好看的!
例如
cal2011
cal12011
额图好多啊!
这里老师还给我们说了个有趣的事输入cal91752会有个神奇的现象!
居然没3-13号呵呵!
这个太BUG了!
不过也没人会用到这个时间所以就当好玩吧!
这是时间管理方面的几个命令!
下面说下帮助命令对于我这种初学者来说,老师的讲课速度是很快的,一堆一堆的命令都往脑子里堆,很多时候都记不住这些命令有什么用!
这时候帮助命令,就帮了大忙了,虽说都是纯英文的,不过总比没有好吧呵呵!
首先说明,命令分为两种:
内部命令和外部命令
内部命令 都没有对应的可执行的程序一个Shell为了维护自身的运行而自带的命令
外部命令 都有对应的可执行的2机制文件
我们用type可以查看命令的类型就拿lscd俩个命令为例
由于ls这个命令有个别名所以用cat做了演示如上图所示!
which能够显示命令对应的2进制文件所在
以上可以看出内部命令和外部命令的区别!
下面说说具体的帮助方法
command--help是大多数外部命令获得帮助方式
helpcommand内部命令的帮助命令
mancommand能查看命令的用户使用手册
infocommand作为man的补充信息来使用
mancommand提供命令的手册页
man为命令提供的使用手册是分章节的
1:
普通的用户命令
2:
系统调用
3:
库调用
4:
特殊文件
5:
文件格式配置文件的语法格式说明
6:
游戏
7:
杂项
8:
管理类命令
man手册页里面经常关注的内容
NAME这个命令的名字
DESCRIPTION解释及命令的选项
EXAMPLES用法举例
在手册页理翻页
空格向下翻一屏
B向上翻一屏
回车向下翻一行
K向上翻一行
在手册页里/?
都能实现关键字查找nN在多个关键词之间切换n下一个
N前一个
q可以退出手册页
这个太大了没法抓图看了!
学习了3天遇见帮助经常用的就是man跟command--help所以有什么不会的这俩个够用了!
接下来学习的是文本查看类命令
cat,more,less,tail,head,tac
tac不常用
cat:
concatinate,dump
连接多个文件倾倒式的显示出来直接翻屏至最后
more能支持用户分屏查看只能向前翻屏(其实能够向前翻屏不过如果翻至文件末就直接退出了无法再往前翻所以才说它只能向前翻屏)
less与more相比能向前翻屏
tail查看一个文件的后N行
head常看一个文件的前N行 -n20 -20
wc能用于统计一个文本文件有多少行多少个单词多少字节
-l只显示多少行
-w显示多少单词
-c显示多少字节
-m显示多少字符
不再一一演示了!
有点儿困了不过还好多啊坚持!
!
我们老师说过一个人一天睡4个小时足够了!
终于到了用户了!
什么是用户?
用户是权限的集合是能使用系统资源及获取服务的凭证
什么是组?
组是一个容器能存放用户容易实现权限的委派是权限的集合
UID/GID 用户/组标识
0-65535的十进制数表示
管理员得ID号永远为0root:
0
系统用户(系统组):
1-499
普通用户(普通组):
500-65534
nobody来宾账户65535也有认为是65536
组分:
(1)私有组基本组用户名与组名相同仅有一个用户的组
(2)公共组额外组附加组
任何一个用户必然会属于某一个组,私有组
安全上下文:
SecureContext
一个进程是否具有访问一个文件的权限取决于发起这个进程的用户是否具有访问这个文件的权限这称为安全上下文
进程:
资源分派的单位,是一个程序正在执行的副本
这些概念是为下面的内容做铺垫的!
对了我博文里写的所有概念都是结合老师讲的及自己的理解写的并未参考资料不准确的地方还望有心人指正!
与用户和组相关的几个文件
/etc/passwd存放用户账号
/etc/shadow存放用户密码
/etc/group存放组
/etc/gshadow存放组密码
添加用户的方法useraddUSERNAME
例如useraddredhat即可创建redhat的用户前面已经说过改密码的方法了passwd
useradd的选项
-uUID指定UID
-gGID指定基本组
-GGROUPNANME,2,3,指定附加组
-c"注释信息"
-d/path/to/home指定家目录
-s指定用的shell
/etc/passwd下看到的内容格式
用户名:
x:
UID:
GID:
:
HOME:
SHELL
用户名密码占位用户ID号用户基本组GID用户的注释信息家目录用户默认使用的SHELL 一般都是/bin/shell
可以查看headtail的示例图
/etc/shadow文件格式
用户名:
加密的密码:
上一次密码的修改时间绝对计数天数:
密码最短使用期限:
密码最长使用期限:
提前多长时间提示用户密码将过期:
密码过期多少天后账号将被禁用:
账号使用期限(默认99999永久有效):
保留
/etc/group
组名:
密码:
组ID:
附加组信息
groupadd添加组常用的俩个选项
-gGID
-ruseradd/groupadd都可用将一个用户或组添加为系统组或系统用户
删除用户/组
userdel
-r连同用户的家目录一起删除
曾经在这里遇到过问题!
将用户的家目录改到其他目录下然后做这个操作即将用户及家目录一起删除,然后我又添加同样用户名的用户的时候提示我没有权限访问用户的家目录!
好绕啊!
!
!
!
!
刚刚找到办法解决了哎!
老师当时对我说看下权限我就没想到去改这个目录的权限类笨啊!
groupdel
修改用户属性/组属性
usermod:
-u修改用户的UID
-g
-a-G
-s
-c
-M-d
-l改变用户的登录名称
-e改变过期时间
-L锁定账号
-U解锁账号
groupmod
-g改变GID
-n改变组名
-l
下面还有些杂项信息
passwd
-l由于锁定账号
-u解锁
--stdin把标准输入改为其他输入
finger显示用户的详细信息
id显示用户的ID标识
who显示当期登录用户信息
改变一个文件属主属组的命令
chown[options]USERNAMEfile
-R递归修改改变目录及目录下其它问件的属主
--reference=a.txtb.txt以a为参照将b改为跟a一样的属主属组
chownUSERNAME:
GRPNAMEfile
chownUSERNAME.GRPNAMEfile
chown:
GRPNAMEfile
chgrp[options]USERNAMEfile
chmod改权限
chmod[options]modefiles...
chmod777a.txt
chmodu=rw-a.txt
chmodg-wa.txt
chmod0+xa.txt
-R递归修改改变目录及目录下其它问件的属性
--reference=a.txtb.txt以a为参照将b改为跟a一样的权限
下面说下权限的问题
一个问件包含以下的权限信息
属主:
rwxu
属组:
rwxg
其他:
rwx0
r读w写x执行组合的方式:
---:
0000能够用3个2进制或一个8进制表示
--x:
0011
-w-:
0102
-wx:
0113
r--:
1004
r-x:
1015
rw-:
1106
rwx:
1117
例如以下练习:
rw-r--r--644
rwxr-xr-x755
---------000
rwx--x--x711
rwx------700
rwxrwxrwx777
r-xr-xr-x555
--x--x--x111
rw-------600
rwx-wx--x731
改变一个文件属主属组的命令
chown[options]USERNAMEfile
-R递归修改改变目录及目录下其它问件的属主
--reference=a.txtb.txt以a为参照将b改为跟a一样的属主属组
改变属主用法1chownUSERNAME:
GRPNAMEfile
改变属主用法2chownUSERNAME.GRPNAMEfile
改变属组chown:
GRPNAMEfile
chgrp[options]USERNAMEfile
chmod改权限
chmod[options]modefiles...
chmod777a.txt
chmodu=rw-a.txt
chmodg-wa.txt
chmod0+xa.txt
-R递归修改改变目录及目录下其它问件的属性
--reference=a.txtb.txt以a为参照将b改为跟a一样的权限
这里将在下面总结脚本的时候一起截图参考
接下来我们学习的是
BASH:
的功能
history,查看历史命令
!
$,alt+.,Esc+.都是引用上一个命令最后一个变量
如这里用的!
$就相当于/etc/passwd
1、命令行编辑:
ctrl+a/e跳到命令行的行首/行尾
ctrl+u删除光标到行前
ctrl+k删除光标到行尾
ctrl+箭头跳单词
2、文件名通配
*任意长度的任意字符
?
匹配任意单个字符
[]匹配制定范围内任意单个字符,[a-z]
[^]取反匹配指定范围[^abc]除了abc以外
[:
lower:
][:
upper:
][:
punct:
][:
space:
][:
alpha:
][:
alnum:
][:
digit:
]
小写 大写 数字
3、命令行补全和路径补全
tab键
命令行补全:
到特定的路径下找到最匹配的命令给予补全
echo$PATH能够看到是那些路径里!
路径补全是在给定的路径下找到以给定的字母开头的文件给予补全
4、命令行展开:
~:
展开为对应用户的家目录
{}:
mkdir-pvx/{y,z{1,2}}
可以看出整个创建的过程
mkdir-pv{x,y}_{1,2}
5、命令扩展
$(),``这个是反引号(区分变量引用下面会说到PS:
今天就在这儿纠结了半天都是前天学完没总结啊!
)俩者都是命令引用将一个命令的执行结果当做参数传给另一个命令
这个在下次总结的时候会用的很多再截图吧!
变量是命名的内存空间
echo打印一段文本
manecho看看
echo${变量名}
命令引用''
变量引用""若引用,可以进行变量替换
''强引用,不会进行变量替换
通常只对当前SHELL有效
bash,变量不需要声明
变量不区分类型默认都是字符串型不能参与数学运算
变量名="strings"
let 变量名="strings"
unset变量名
这里面有个set是当时我做笔记的时候写错了刚在打命令的时候没值所以上课时跑神了吧哎!
!
前天简单的介绍了下脚本!
脚本就是命令的堆砌
第一行#!
/bin/bash称为shabang标准的写法是#!
/bin/bash中间是没空格的不过貌似空格没影响不过还是标准点儿好!
前天就以有限的知识写了俩个小脚本也是我们的作业!
就粘这里吧!
因为老师要验收博客和作业这样也比较方便吧!
其实今天才发现里面能够简写因为cd/tmp/scripts已经切换到/tmp/scripts目录下
所以下面所有的/tmp/scripts都可写为./
以上俩个都验证过了不过由于都执行过所以有些结果现在显示的都有问题不再截图了!
终于把一天的东西总结的差不多了好困!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- LINUX 学习