Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux的发行版说简单点就是将Linux内核与应用软件做一个打包。目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。
登录系统后,在当前命令窗口下输入命令:
#!/bin/bash
ls /
以下是对这些目录的解释:
/bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令。
/boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
/dev:dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
/etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。
/home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
/lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
/opt:这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
/root:该目录为系统管理员,也称作超级权限者的用户主目录。
/usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
/var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用ll或者ls –l命令来显示一个文件的属性以及文件所属的用户和组,如:
#!/bin/bash
[root@www /]# ls -l
total 64
dr-xr-xr-x 2 root root 4096 Dec 14 2012 bin
dr-xr-xr-x 4 root root 4096 Apr 19 2012 boot
……
实例中,bin文件的第一个属性用"d"表示。"d"在Linux中代表该文件是一个目录文件。在Linux中第一个
字符代表这个文件是目录、文件或链接文件等等。
接下来的字符中,以三个为一组,且均为『rwx』 的三个参数的组合。其中,[ r ]代表可读(read)、
[ w ]代表可写(write)、[ x ]代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,
如果没有权限,就会出现减号[ - ]而已。每个文件的属性由左边第一部分的10个字符来确定(如下图)。
从左至右用0-9这些数字来表示。
第0位确定文件类型,第1-3位确定属主(该文件的所有者)拥有该文件的权限。
第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。其中,第1、4、7位表示读权限,如果用"r"字符表示,则有读权限,如果用"-"字符表示,则没有读权限;
第2、5、8位表示写权限,如果用"w"字符表示,则有写权限,如果用"-"字符表示没有写权限;第3、6、9位表示可执行权限,如果用"x"字符表示,则有执行权限,如果用"-"字符表示,则没有执行权限。
#!/bin/bash
1) 查看有哪些分组
cat /etc/group
2) 添加用户组(其中:-g为用户组的gid)
groupadd -g 600 hadoop
3) 删除用户组
groupdel hadoop
4) 添加用户(其中:-u 601为用户id,-g hadoop为用户添加到哪个组,更多参数用户使用man useradd)
useradd -u 601 -g hadoop liumm
5) 修改密码
passwd [-d|-l|-S|-u] 用户名称
其中:-d为清空密码,-l锁定用户,-S查看用户状态,-u解锁用户
6) 删除用户(其中:-r为删除用户时是否把宿主目录也删除)
userdel [-r] 用户名
#!/bin/bash
1) ls命令(查看目录下文件列表)
ls /etc/
2) 创建目录
mkdir hadoop
3) 切换目录
cd .. 切换上一级
cd / 切换到根目录
cd 切换到宿主目录
4) 拷贝命令(其中:-r拷贝子目录,-v显示拷贝过程)
cp [-r|-v] ../liumm.txt ../liumm_rename.txt
5) 文件分发
scp 原地址 目的地址,常用用法如下
scp ../liumm.txt root@192.168.1.1:~/opt 将文件liumm.txt拷贝到服务器192.168.1.1下的~/opt目录下
scp root@192.168.1.1:~/opt/liumm.txt ./ 将服务器192.168.1.1下的~/opt/liumm.txt文件拷贝到当前目录
scp -R root@xxx:~/opt/ root@bbb:~/opt/ 将xxx服务器中的/opt目录下的文件全部拷贝到bbb服务器/opt文件中
6) 删除命令(其中:-r为递归删除,-f为强制删除,-v显示删除过程)
rm [-r|f|v] 文件或者目录
7) 查看命令
cat liumm.txt
cat liumm.txt >> liumm_new.txt
cat liumm_1.txt liumm_2.txt >> liumm_new.txt
8) 移动命令
mv ../liumm ../liumm_new
9) 查看当前位置
pwd
10) 文件查找(find太慢了,可以使用这个)
updatedb 离线检索收集文件的信息
locate 文件目录名称
11) 文件搜索
grep [-c|i|h|n|s|v] 搜索内容 文件地址
其中:
-c 只输入匹配的行数
-i 不区分大小写
-h 查看多文件时,不显示文件名
-n 显示匹配的行号
-s 不显示不存在或者匹配不存在的信息
-v 显示不包含匹配的行数
grep -c liumm ../liumm.txt
12) 文件重导
> 覆盖
>> 追加
ls -a >> liumm.txt 将ls -a 输出的信息接入到liumm.txt
13) 管道功能
| 将之前命令输出的信息给下一个命令进行使用
ls -a | grep liumm 将ls -a 输出的结果在进行过滤查询
#!/bin/bash
1) 命令模式
光标移动
k 上
j 下
h 左
i 右
^ 头
& 尾
[n]G 跳转到地几行
翻页
ctrl+f 前一页
ctrl+b 后一页
ctrl+u 向前翻半页
ctrl+d 向后翻半页
删除命令
x 删除当前光标一个字符
dd 删除当前光标一行
取消操作
u 取消最近一次操作
U 取消所有操作
Ctrl+R 恢复对u的操作
复制操作
[n] yy 复制第n行
y$ 复制当前光标到尾部
y^ 复制当前光标到首部
2) 输入模式
home 行首
end 行尾
page up 上一页
page down 后一页
delete 删除当前光标单词
3) 末行模式
保存与退出
:q! 强制退出
:w 保存
:w [另存为文件名]
:wq 保存退出
:wq!强制保存退出
显示行号
set nu 显示行号
set nonu 取消行号
查找与替换
/[key] 查找
:s/old/new 替换首次出现old替换为new
:s/old/new/g 替换全部出现old替换为new
:[n,m] s/old/new/g 替换[n,m]行出现old替换为new
:s/old/new/c 交互替换(y替换,n不替换,a接下来所有替换,q退出,i替换并退出)
#!/bin/bash
netstat -nlp| grep 8080
#!/bin/bash
tar -czvf liumm.tar.gz liumm/
tar -xzvf liumm.tar.gz ../
#!/bin/bash
java -jar xxx.jar &
java -jar xxx.jar nohup
#!/bin/bash
logout 注销退出
rebbot 重启
shutdown now 立即关机
shutdown +5 过五分钟关机
shutdown 10:30 在十点半关机
shutdown -r now 立即关机并且重启
shutdown -r 10:33 在10:33重启
内容来源于网络,如有侵权,请联系作者删除!