开发环境介绍:
1、Windows系统+虚拟机
2、virtualBox 开源免费
3、ubuntu12.04 LTS 稳定速度快
linux系统介绍:
1、UNIX系统起源,由贝尔实验室研究员丹尼斯.里奇和肯汤普逊合作开发,并随便发明了C语言,现主要应用于各种大型服务器,如:电信、银行、各大公司的核心关键业务,苹果公司以它作来内核,推出了MacOS、iOS系统,该系统收费,质量比较高。
2、Minix系统是UNIX精简版主要用于科学研究,Linux的作者林纳克纳.托瓦斯就是受了它的启发,引发了全世界的程序员一起完善了Linux系统。
3、Linux指针是系统的内核,目前由GNU社区维护,但并不能直接使用,需要安装相应的驱动、应用、界面才能使用,安装了驱动、应用、界面的Linux被称不发行版Linux常用的有:ubuntu、debian、redhat、CentOS、UOS、深度、新支点、安卓。
Linux文件系统:
Linux管理硬盘的能力非常强,因此不需要显式分区,也就没有盘符,所有文件都被管理在根目录下 /。
bin 存储着一些系统命令(可执行文件)。
sbin 存储着一些管理员级别的用户才能使用高级命令。
boot 存储着系统启动所需要的文件
dev 存储着硬件的设备文件
etc 存储着系统和应用软件的配置文件
lib 存储着一些库文件 xxx.so xx.a(类似Windows下的.dll文件)
media 存储多媒休相关内容,如:U盘、共享目录
mnt 以挂载方式呈现的文件或目录
opt 存储安装的应用软件
proc 存储着各个进程的临时文件
root 存储超级用户相关数据
ubuntu系统下root默认关闭,执行:sudo passwd root,设置密码后可以开启。
su root 切换到root用户。
run 存储着系统运行时的相关数据
selinx Linux系统的防火墙
usr 存储着C、C++、系统的头文件
home 用户主目录,会有以用户名命名的目录,这个才是用户有绝对控制权的目录。
整个Linux系统的组织是一棵倒悬树,根就是最顶层目录(/),目录之间只能上下进入,不能左右。
路径:文件的地址,它描述了文件在文件系统中的位置信息。
绝对路径:以根目录为起点描述一个文件的位置。
相对路径:以当前位置为起点描述一个文件的位置。
特殊路径:
/ 根目录,也被作路径分隔符,windows系统的路径分隔符是
~ 用户主目录
… 代表上一级目录
. 代表当前目录
Linux系统下一切皆文件,目录就是个特殊的文件。
终端的使用技巧:
1、快速打开终端:Ctrl+Alt+t
第一次使用,把终端锁定到启动器。
2、新建终端标签页:Shift+Ctrl+t
3、Tab自动补全指令或参数
如果没有补出,可能没有候行,或有两个以上修选。(配置文件有才能填)
连续按两次会列出所有候选
4、up/down方向键可以调出命令执行记录
5、!cmd 把之前执行过的指令再执行一次
6、home 光标跳转到行首
7、end 光标跳转到行尾
8、Ctrl - 缩小文字
9、Ctrl + 放大字体,实际上Shift+Ctrl +
10、exit 退出终端
常用命令:
clear 清理屏幕,Ctrl+l快捷键功能相同
ls 显示当前目录下的文件
-l 显示文件详细信息,ubuntu系统重定义为ll。
-a 显示隐藏文件,ubuntu系统重定义为la.
在Linux和UNIX系统下以.开头文件默认是隐藏的(Ctrl+h)
pwd 显示当前所在的位置
cd
man [n] key 查看系统帮助手册
1 系统命令
2 系统调用(操作系统提供的功能函数)
3 C语言标准库函数
文件相关命令:
touch 创建文件
rm 删除文件,删除的文件不经过回收站,删除时要慎重,建议移动到指定的目录下,定期删除。
cp
mv
cat 把文件的所有内存显示在屏幕上,只适合查看较小的文件,因为终端的回滚行数默认是有限制 的。
more 只显示文件的每一页,Enter键加载下一行,空格键翻页,q键退出。
head 只显示文件的前10行内容
tail 只显示文件的后10行内容
目录相关命令:
mkdir 创建目录
-p 可以创建多级目录
rmdir 只能删除空目录
rm -rf 删除非空目录
cp -frp 复制目录
mv 移动和重命名目录,不需要额外的参数
网络相关命令:
ifconfig 查看网络配置,windows系统下使用ipconfig
ifconfig eht[n] down 禁用网卡
ifconfig eth[n] up 启用网卡
ifconfig eth[n] xxx.xxx.xxx.xxx netmask 255.255.255.xxx 配置ip地址和子网掩码
ping xxx.xxx.xxx.xxx 测试网络是否连通,Ctrl+c 结束
127.0.0.1 回环地址,代表本机,测试它就相当于测试网卡是否正常工作。
windows系统下默认只执行四次,加/t参数会执行执行。
telnet xxx.xxx.xxx.xxx 远程登录服务器
输入用户名:
输入密码:
采用明文传输,安全性低,但速度快,一般公司内部采用这种登录方式。
ssh [用户名]@xxx.xxx.xxx.xxx
输入密码:
首次登录会询问是否保存密匙
47.97.229.46 student zzxx
exit 退出
其它命令:
chmod 修改文件权限
用法1:chmod mmm
m = r4 w2 x1
第一个m 代表属主的权限
第二个m 代表属组的权限
第三个m 代表其它的权限
用法2:chmod +|-rwx
所有用户一增加可删除某一项权限
注意:目录必须有执行权限,否则cd命令无法进入。
ln <link_name> 创建链文件
默认创建的是硬链接文件,它链接的是文件的内容,当链接目标被删除后,链接文件依然能正常访问。
-s 创建的是软链接,当链接目标被删除后,链接文件不能再访问。
注意:目录文件只能创建软链接
find [path] -name 按文件名查找文件
grep <“key”> <[path/]文件名> 查找文件的内容
在指定的文件中查找key
tar 压缩/解压文件
tar -zcvf pack.tar.gz <…>
tar -zxvf pack.tar.gz 默认解压到当前目录
-C [path] 解压到指定的目录
通配符、管道、重定位:
通配符:
- 代表任意多个字符
任意一个字符
grep <“key”> / * -R
管道:
把命令的执行结果当作另一个命令的数据源,这种技术叫管道。
ls -a | grep “key”
find / | grep “key”
重定位:
把命令的执行结果不显示到屏幕而是写到文件中。
cmd > filename 如果文件存在则先清空不存在则创建,再写入命令的执行结果
cmd >> filename 如果文件不存在则创建,存在追加内容。
对终端进行配置:
打开终端配置文件:
gedit ~/.bashrc
1、配置命令提示符:56 行
PS1=’\u@:\w$ ’
保存退出,执行source ~/.bashrc 重新加载
2、新建mk和del命令
在.bashrc末尾添加
```c
mk()
{
mkdir $1 && cd $1
}
del()
{
mv ~/.local/share/Trash/files/
}
保存退出,执行source ~/.bashrc 重新加载
```