header('content-type:application/octet-stream');
header('content-disposition:attachment; filename='.time().'.js');
echo $jsdata;
php输出js文件
远程更新git项目代码
1.添加 hook.php 脚本,记得 检查PHP的exec函数 是否被禁用
$web_root='/www/wwwroot/xxx.com'; //服务器 项目根目录地址
$shell = "cd {$web_root}/ && pwd && git pull 2>&1";
exec($shell,$out);
print_r($out);
2.在代码管理库(gitea ,github)添加钩子,指向上面的php地址 http://xxx.com/hook.php
3.在服务添加 www 权限
cd ~
vi .git-credentials
https://用户名:密码@gitee.com
git config --global credential.helper store
#执行成功后出现~/.gitconfig文件
cp ~/.gitconfig /home/www/
cp ~/.git-credentials /home/www/
cd /home/www
chown www.www .gitconfig
chown www.www .git-credentials
4.到你的项目下执行
chmod -R 777 .git
6.检查项目权限,如果不对
chown -R www.www 项目地址
5.用浏览器访问 http://xxx.com/hook.php
成功结果返回
Array ( [0] => /www/wwwroot/dcc.com [1] => Already up-to-date. )
mysql主从同步
主库ip 172.22.230.212
从库ip 172.22.230.213
数据库备份
mysqldump -uroot -p --databases xhjgame>xhjgame.sql
主库
>CREATE USER 'slave'@'172.22.230.213' IDENTIFIED BY '密码';
>GRANT REPLICATION SLAVE ON *.* TO 'slave'@'172.22.230.213';
>flush privileges;
> show master status
从库 注意两个值 mysql-bin.00058 和MASTER_LOG_POS
>CHANGE MASTER TO MASTER_HOST='172.22.230.212',
MASTER_USER='slave',
MASTER_PASSWORD='密码',
MASTER_LOG_FILE='mysql-bin.000587', MASTER_LOG_POS=0;
>start slave
>show slave status
51单片机常见缩写
SFR special funtion register 特殊功能寄存器
ACC accumulate 累加器
PSW progammer status word 程序状态字
CY (PSW.7) carry 进位标志位
AC (PSW.6) assistant carry 辅助进位标志位
OV (PSW.2) overflow 溢出标志位
PC progammer counter 程序计数器
DPTR data point register 数据指针寄存器
SP stack point 堆栈指针
TCON timer control 定时器控制寄存器
TF1 (TCON.7) Timer1 flag T1中断标志位
TR1 (TCON.6) Timer1 Run T1运行控制位
TF0 (TCON.5) Timer0 flag T0中断标志位
TR0 (TCON.4) Timer0 Run T0运行控制位
IE1 (TCON.3) Interrupt1 exterior 外部中断1中断标志位
IT1 (TCON.2) Interrupt1 touch 外部中断1 触发方式选择位
IE0 (TCON.1) Interrupt0 exterior 外部中断0中断标志位
IT0 (TCON.0) Interrupt0 touch 0-电平触发 1-下降沿触发
IE (A8H) interrupt enable 中断允许寄存器
EA (IE.7) enable all interrupt 中断总允许位
ES (IE.4) enable serial 串行口中断允许位
ET1 (IE.3) enable timer 1 T1中断允许位
EX1 (IE.2) enable exterior 1 外部中断1中断允许位
ET0 (IE.1) enable timer 0 T0中断允许位
EX0 (IE.0) enable exterior 0 外部中断0中断允许位
IP (B8H) interrupt priority 中断优先级寄存器
PS (IP.4) priority serial 串口优先级标志位
PT1 (IP.3) priority timer 1 定时器1优先级标志位
PX1 (IP.2) priority exterior 1 外部中断1优先级标志位
PT0 (IP.1) priority timer 0 定时器0优先级标志位
PX0 (IP.0) priority exterior 0 外部中断0优先级标志位
PCON (87H) power control 电源控制和波特率选择
TMOD (89H) timer mode 定时器方式控制寄存器
MSB = most significant bit//最高有效位
LSB = last significant bit//最低有效位
OE = output enable //输出使能
Linux 学习笔记 #4 磁盘管理
1 df
选项与参数:
-a :列出所有的文件系统,包括系统特有的 /proc 等文件系统;
-k :以 KBytes 的容量显示各文件系统;
-m :以 MBytes 的容量显示各文件系统;
-h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
-H :以 M=1000K 取代 M=1024K 的进位方式;
-T :显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出;
-i :不用硬盘容量,而以 inode 的数量来显示
文件系统 类型 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root xfs 17G 1.1G 16G 6% /
devtmpfs devtmpfs 898M 0 898M 0% /dev
tmpfs tmpfs 910M 0 910M 0% /dev/shm
tmpfs tmpfs 910M 9.6M 901M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 146M 869M 15% /boot
tmpfs tmpfs 182M 0 182M 0% /run/user/0
tmpfs tmpfs 182M 0 182M 0% /run/user/10
2 du
Linux du命令也是查看使用空间的,但是与df命令不同的是Linux du命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的,这里介绍Linux du命令。
语法:
du [-ahskm] 文件或目录名称
选项与参数:
-a :列出所有的文件与目录容量,因为默认仅统计目录底下的文件量而已。
-h :以人们较易读的容量格式 (G/M) 显示;
-s :列出总量而已,而不列出每个各别的目录占用容量;
-S :不包括子目录下的总计,与 -s 有点差别。
-k :以 KBytes 列出容量显示;
-m :以 MBytes 列出容量显示;
[root@localhost ~]# du -ah
4.0K ./.bash_logout
4.0K ./.bash_profile
4.0K ./.bashrc
4.0K ./.cshrc
4.0K ./.tcshrc
4.0K ./anaconda-ks.cfg
4.0K ./.bash_history
4.0K ./test.txt
32K .
3.fdisk Linux 的磁盘分区表操作工具
fdisk [-l] 装置名称
[root@localhost ~]# fdisk -l
磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000ba19e
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 41943039 19921920 8e Linux LVM
磁盘 /dev/mapper/centos-root:18.2 GB, 18249416704 字节,35643392 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
从中我们可以看出,有4个设备,分别为/dev/sda、/dev/sdb、/dev/mapper/cl-root、/dev/mapper/cl-swap。其中/dev/sda硬盘已经有2个分区分区为:/dev/sda1和/dev/sda2。/dev/mapper/cl-root和/dev/mapper/cl-swap两个设备是/dev/sda2分区创建的逻辑卷。这里的/dev/sdb硬盘设备并没有被分区
命令(输入 m 获取帮助):
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition <==删除一个partition
l list known partition types
m print this menu
n add a new partition <==新增一个partition
o create a new empty DOS partition table
p print the partition table <==在屏幕上显示分割表
q quit without saving changes <==不储存离开fdisk程序
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit <==将刚刚的动作写入分割表
x extra functionality (experts only)
w保存,q离开