之前一直搞不懂,为什么全是命令行的linux系统这么多公司都在用,当你看不懂那一行行命令时你一定会和我一样觉得头大。但当你学习了命令再结合桌面版觉得linux还是挺不错的。(不管做什么,你都要对你所学的东西保持热爱!)
# linux哲学思想
一切都是一个文件,包括硬件。
小型,单一用途的程序。(全是一些小工具)
链接程序,共同完成复杂的任务。
避免令人困惑得用户界面。
配置数据存储在文本中。 (windows的配置文件都在注册表这个数据库中存放 )
虚拟机(初学推荐先使用虚拟机进行模拟操作)
用软件 vmware,virtualbox等模拟硬件。
VMware使用步骤:
--新建建虚拟机
--选择安装步骤
--选择客户机的操作系统 ,以及安装的版本
--给虚拟机起个名,选择生成文件位置
--设置硬盘大小(200G),将虚拟磁盘存储为单个文件。
-- 选择镜像文件位置,调整内存和内存。
windows文件路径是反斜线“\”()
linux只有一个根,路径用的是“”/“”正斜线
windows linux(目录的分类)
windows usr 配置文件
user home 用户数据
--硬盘文件:/dev/sda,/dev/sdb,...
用户登录
1.root用户 ---超级用户
2.普通(非特权)用户
id -u ming可以查看用户权限(centos6从500开始,centos7和Ubuntu是从1000开始的)
不能从名字判断是否是管理员,要看id值,root的id值是0。
终端terminal
1.设备终端
2.物理终端(/dev/console)
3.串行终端(/dev/ttys#)
4.虚拟终端(tty:teletypewriters,/dev/tty# tty可有n个)
5.图形终端(/dev/tty7)
6.伪终端.
7.tty
交互式接口
启动中终端后,在终端设备附加一个交互式应用程序。
图形界面GUI 和命令行界面CLI(推荐使用Xshell)
shell
shell是linux系统的用户界面,提供了用户与内核进行交互操作的一种接口。他接受用户输入的命令并把他送入内核去执行。
linux的命令解释器 ,shell也是高级编程语言。
查看bash命令:echo $SHELL
查看主机名:bashname
显示当前系统使用的所有shell:cat /etc/shells
命令提示符
[root@localhost~]#
#管理员
$普通用户
显示命令符格式:echo $PS1
ubuntu切换到root管理员:sudo -i
centos用命令设置提示字符颜色样式:nano /etc/profile.d/env.sh打开此路径,创建env.sh文件,并把样式填写进去。
Ubuntu用命令设置提示字符颜色样式(两种方法,建议第二种):
- ll /etc/profile
cat /etc/profile
打开此文件后,添加字体样式。
- 分着添加
root:ls -a
nano .profile
打开此文件后添加到文件末尾,保存。
普户:exit退出root用户,用普通账号操作,同root操作。
设置字体样式范本:
PS1="[\e[1;5;41;33m][\u@\h \W]\$[\e[0m]"
PS1="[\e[1;32m][[\e[0m]\t [\e[1;33m]\u[\e[36m]@\h[\e[1; 31m] \W[\e[1;32m]][\e[0m]\$"
\e 控制符\033 \u 当前用户
\h 主机名简称 \H 主机名
\w 当前工作目录 \W 当前工作目录基名
\t 24小时时间格式 \T 12小时时间格式
! 命令历史数 # 开机后命令历史数
pstree -p:查看后台运行的数据,有bash。
sleep 10:休眠
设置登录后的图片
在/etc/下添加motd(ASCII文字图片),登陆后即可看到
/etc/issue这个文件是登录前的信息文件
执行命令
type cat :判断内部还是外部命令(hashed 外部 builtin内部)
which/whereis:查看外部命令的路径
先输入bc(计算器),再输入obase=2/ibase=2二进制
hash 哈希缓存表 会存放你使用过的所有外部命令。
别名
alias取别名:
定义别名NAME,其相当于执行命令value,alias NAME=‘valueghgh’
存别名的位置:输入ls -a找到.bashrc文件(个人的路径文件),打开这个文件(nano .bashrc),存入 alias cdnet='cd /etc/sysconfig/network-scripts/'
删除别名:unalias+别名
命令执行过程(优先级):
1.别名
2.内部
3.外部命令hash表
4.外部命令$PATH