linux虚拟机安装
可参考:https://blog.youkuaiyun.com/u013142781/article/details/50529030
linux 基础快捷键和工具说明
- Ctrl+alt+t 图形界面中呼出控制终端
- alt+shift+ = 放大终端
- ctrl + - 缩小终端
- ctrl + alt +F1~F6 切换至无图形界面操作状态 共tty1到tty6六个终端
- ctrl + alt + F7 切换回图形界面
- 安装VMtools 实现物理机和虚拟机的文件传输和复制粘贴
可参考:https://blog.youkuaiyun.com/blessed_sy/article/details/81173746 - 推荐安装openssh-server 使用Xshell6 等shell连接工具和 Filezilla 连接SFTP服务进行文件传输
- xrandr 可查看当前界面分辨率
- xrandr -s 1152x864 设置分辨率(重启后失效)可在VMware查看选项选择全屏和独占模式 ctrl+alt退出独占模式
- ping url[ip] 例如:ping www.baidu.com ping 8.8.8.8 查看本机和目标主机连通性
- ifconfig 查看本机网卡信息
- linux下一切皆文件 文件扩展名仅用于人操作时易于识别 对于系统毫无意义
基础命令说明
- ls 显示当前路径下文件
-a 显示所有文件 包括隐藏文件
-l 显示详细信息 - cd 切换目录
- mkdir 创建文件夹
- vim 著名的终端编辑器
- tmux linux下终端分屏工具
- apt-get install + 安装文件名 软件安装
- touch 创建文件
- chmod 修改权限
- chown 修改文件属主
- ./可执行文件 执行二进制可执行文件或脚本
- gcc 编译文件
- tar 解压
- reboot 系统重启
- cat 查看文件内容
- mv 移动文件
- cp 复制文件
- sudo su 切换至root权限
- su 切换用户
- pwd 查看当前路径、
- man应用
man 1 command ls(1)//命令
man 3 printf printf(3) //库函数
man 2 open open(2) //系统调用
linux下好用的分屏工具
(1)安装工具
在ubuntu系统中使用sudo apt-get install tmux
(2)使用工具
1,输入命令tmux使用工具
2,上下分屏:ctrl + b 再按 "
3,左右分屏:ctrl + b 再按 %
4,切换屏幕:ctrl + b 再按o
5,关闭一个终端:ctrl + b 再按x
6,上下分屏与左右分屏切换: ctrl + b 再按空格键
其他:
! 将当前面板置于新窗口,即新建一个窗口,其中仅包含当前面板
Ctrl+方向键 以1个单元格为单位移动边缘以调整当前面板大小
Alt+方向键 以5个单元格为单位移动边缘以调整当前面板大小
空格键 可以在默认面板布局中切换,试试就知道了
q 显示面板编号
方向键 移动光标选择对应面板
{ 向前置换当前面板
} 向后置换当前面板
Alt+o 逆时针旋转当前窗口的面板
Ctrl+o 顺时针旋转当前窗口的面板
文件类型
-
文件类型
- 普通文件 d 文件夹文件 b 块设备文件 c 字符设备文件 p 管道文件 s socket类型的文件 l 软链接文件
C语言数据类型补充(明白以下定义含义)
int arr[2][3]={11,21,31,16,26,36};
int (*p)[3];
p=arr;
p++;
*p++;
(*p)++;
int p;
int *p;
int **p;
int *p[3];
int (*p)[3]
void *malloc();
int (*f)(int,int);
int (*f[3])(int,int);
include <>和""的区别
- “” 先在当前路径下找头文件,如果找不到,到系统指定的路径下找.如果还找不到报错
- <> 在系统指定的路径下找,找不到报错.
- 系统指定的路径是什么?
视系统而定 ubuntu /usr/include/
头文件编写
#ifndef XXX
#define XXX
常量定义
文件内部使用的宏
文件内部使用的数据类型
全局变量
本地变量(即静态全局变量)
局部函数原型
类的实现
全局函数
局部函数
#endif
变量的定义是要为变量分配空间的.变量的声明是不需要分配空间.
其实变量的声明是变量作用域的扩充.
环境变量
-
每个进程都维护着一个环境变量的列表.进程可以使用这些环境变量指定的值去访问计算机系统的相关资源.
-
bash这个进程的环境变量.
bash进程有两种类型的变量 自定义类型的变量 环境变量 环境变量是可以被子进程继承的变量. 自定义变量是进程私有的,不能被子进程继承.
-
如何查看bash进程的环境变量列表
env(1) USER=tarena //这是环境变量的组织格式 $name 取环境变量的值 USER=beijing 如果有这个环境变量,将环境变量的值改为beijing 如果没有这个环境变量,将这个变量添加到进程的自定义变量列表中. 注意一点 = 的两边绝对的不允许出现空格
-
export name 将name设定为环境变量 关闭shell后失效
-
unset name 删除环境变量
-
PS1自定义变量
指定了bash的提示符 tarena@ubuntu:~/uc/day03/t_math$ echo $PS1 \[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ tarena@ubuntu:~/uc/day03/t_math$ env|grep PS1 PS1="\W\$" bash进程执行的时候,会执行一个脚本文件.通常将环境变量 自定义变量 别名定义在这个脚本文件中.可使设置的环境变量永久生效 ~/.bashrc
PATH 环境变量
~$echo $PATH
/home/tarena/Qt5.4.1/Tools/QtCreator/bin:/home/tarena/Qt5.4.1/5.4/gcc/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
在bash上输入a.out的时候,执行当前路径下的a.out可执行文件.
PATH=/home/tarena/Qt5.4.1/Tools/QtCreator/bin:/home/tarena/Qt5.4.1/5.4/gcc/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:.
export PATH=$PATH:.
环境变量组织方式
- 每个进程都有一张环境表,环境表是一个字符指针数组,每个指针指向一个以‘\0’结尾的环境字符串。Main函数的第三个参数就是环境表地址。
HOME
该变量指定用户的主工作目录,即用户登录到Linux系统时,默认的目录。
root@juggler:/work# echo $HOME
/root
root@juggler:/work# su juggler
juggler@juggler:/work$ echo $HOME
/home/juggler
释:环境变量是一个变量,它的值随着用户的不同而不同。
HISTSIZE
该变量指定保存历史命令的数目。
juggler@juggler:~$ echo $HISTSIZE
1000
释:在Linux系统中最多保存1000条命令记录
LOGNAME
该变量指定显示用户的登录名。
juggler@juggler:~$ echo $LOGNAME
juggler
readonly
该命令用于设置只读环境变量。
释:将环境变量MY_ENV设置为只读模式后,就不能在对它进行修改了,直到用户退出登录后才失效
存放环境变量的文件
5.1 /etc/profile
该文件的作用是当用户登录时获取系统的环境变量,只获取一次。
5.2 /etc/bashrc
当执行完/etc/profile文件后,用户想打开bash Shell就会读取该文件。如果想每次打开bash Shell后都执行某些操作,可以在该文件中设置。
5.3 ~/.bash_profile
每个用户都可使用该文件输入专用于自己使用的shell信息。当用户登录时,该文件仅仅执行一次,默认情况下,它设置一些环境变量,执行用户的.bashrc文件。
单个用户此文件的修改只会影响到他以后的每一次登陆系统。因此,可以在这里设置单个用户的特殊的环境变量或者特殊的操作,那么它在每次登陆的时候都会去获取这些新的环境变量或者做某些特殊的操作,但是仅仅在登陆时。
5.4 ~/.bashrc
该文件包含专用于单个人的bash shell的bash信息,当登录时以及每次打开一个新的shell时,该该文件被读取。
单个用户此文件的修改会影响到他以后的每一次登陆系统和每一次新开一个bash。因此,可以在这里设置单个用户的特殊的环境变量或者特殊的操作,那么每次它新登陆系统或者新开一个bash,都会去获取相应的特殊的环境变量和特殊操作。
5.5 ~/.bash_logout
当每次退出系统(退出bash shell)时,执行该文件。