一、Unix 开发环境
1、Unix的特点:
1可以有多个用户在同一系统上(多用户)
2可以同时运行多个程序(多任务)
3维护权限,确定哪些用户可以访问哪些(权限)
4分配每个用户可以使用的磁盘空间量(分配空间)
5对于隐藏文件只允许特定的用户访问(隐藏文件的权限)
2、Loging User Logout
2、常用命令(文件管理命令)
1、
ls:显示当前目录下的文件(不包含隐藏文件)
ls -a 显示当前目录下的所有文件,包含隐藏文件(.xxx 类型的为隐藏文件)
ls -l 以详细方式列出当前目录的内容(文件的大小、名称、最后修改时间等内容)
ls–R 递归的列出所有文件,包括子目录
ls –la 显示当前目录下所有文件的信息
ls -t 按照修改时间排列显示当前目录文件
2、
rmdir 目录名(rmdir 只可以删除空目录)
mkdir homework 创建目录homework
rmdir homework 删除目录homework
3、
cd/cd~回到主用户目录
cd. 当前目录
cd .. 返回上一级目录
cd ~/homework 回到homework(指定文件)
4、
pwd 显示当前路径
5、
rm:删除文件或目录
rm -i 交互式删除文件(删除前需用户确认)
rm -f 强制删除(对文件,不对目录)
rm -r 递归删除,删除说有子目录的内容
rm -rf(强制删除目录中的文件)
6、cp:拷贝
cp 旧文件名 新文件名 (拷贝到同一个目录,更新文件名)
cp 旧文件名 /目录名/ 拷贝到别的目录
cp -i 旧文件名 新文件名 (若同名,提示删除)
cp -r 目录 新目录 把一个目录拷贝到指定路径
7、mv 移除文件
mv 旧文件名 新文件名 (重命名旧文件名)
mv 旧文件 /目录名/ 移动到别的目录
8、通配符
ls h* 列出所有以h开头的文件
ls *.cpp 找出所有以.cpp结尾的文件
ls ?xxx xx内容相同,前面一个字符
* 代表任意个字符(包含0个)
?代表一个内容的任意字符
3、显示文件的内容到屏幕上
clear 清屏 (快捷键 ctr+l)
cat 文件名 查看文件内容
less 文件名 分屏查看文件内容
head 文件名 查看文件前十行
tail 文件名 查看文件后十行
4、搜索文件内容
单搜索
1、
less 文件名
less biglist ->/banana 查找大文件的内容(banana)
2、
grep:搜索
grep 文件内容 文件名
grep -i 文件内容 文件名
grep -i ‘xxxx’ 文件名(搜索词组)
grep -v文件内容文件名(不匹配的显示出来)
grep -c文件内容文件名(匹配行的总数)
grep -n文件内容文件名(显示匹配的行号)
grep -ivc 文件内容 文件名(搜索不匹配的行数)
3、
wc:统计单词
wc -l文件内容 统计行数
wc –w 文本内容 统计字节的个数
wc –c 文本内容 统计单词的个数
4、重定向输出
1、cat>list1 (把文件内容ABCD……输出到list1)
A
B
C
D
……..
Ctrl+D终止输出
2、cat>>list1 追加(继续添加文本内容EFG….到list1)
E
F
G
…..
cat list1 查看list1文件的内容
cat list1 list2>biglist (把文件list1 list2 的内容输出到biglist文件中)
cat biglist (查看biglist文件内容)
ls |sort >desktop.txt 将主目录内容保存到desktop.txt中
5、重定向输入
sort:排序
sort<biglist (将biglist文件的内容排序)
sort<biglist>slist (将biglist排序的内容输出到slist文件中)
6、管道
who 登录用户信息
who |sort 先查询在排序
who |wc –l 先查询在统计字数
7、获取帮助
man wc (获取wc用户命令)
whatis wc (wc位置在哪)
apropos 查找不确定的名称(apropos keyword ,apropos copy)
8、文件权限
10个字符 首字符 ‘—‘ 表示文件 ‘d’表示目录,其他9个分为三组,第一组为用户组,第二组为组用户,第三组为其他用户
1、文件:
r:读和拷贝权限
w:写权限
x:对于一个文件而言,并拥有x权限,不一定被执行,对于一个可执行文件拥有x权限才可以执行
2、目录:
r:读和拷贝权限
w:可以从目录删除文件或移除文件
x:对目录访问文件的权限 读文件必须要有访问文件权限
3、修改访问权限
chmod go-rwx biglist (组用户或其他用户取消rwx权限)
u user
g group
o other
a all
r read
w write(delete)
x execute (and access directory)
+添加权限
-取消权限
二进制修改权限
rw- 6
r-- 4
--- 0
(rw-r-----)
9、进程
ps /ps –e 查看进程信息
kill PID_number 杀死进程
10、其他命令
find .name “Circle.h” –print 查找指定文件
who am I 当前路径
which which 查找(man/ls/which/gcc)
finger 详细登录信息
date 查询系统时间和日期
history 查询历史指令记录
11、vi编辑器
i,a插入修改
:w 在没有退出保存文件
:q!强退
:wq 保存并退出
:x,ZZ保存并退出
dd 删除单行
x 删除
:set number 添加行标
:set nonumber取消行标
Esc 进入命令模式
12、shell
Bash(.sh)
1、Vi编辑器编写;
#!/bin/bash
echo hello world
命令行上chmod 755 first.sh (修改权限)
2、echo Hello world
Hello world
3、vi编辑器编写:
#!/bin/bash
MY_MESSAGE = “HELLO WORLD”
echo $MY_MESSAGE
gcc应用:
1、 vi编写程序hello.c
2、 gcc hello.c