03-09
0
centos命令
防火墙
1. 临时关闭防火墙
要立即关闭防火墙(不需要重启系统):
sudo systemctl stop firewalld
这将临时停止防火墙服务。
2. 禁用防火墙开机启动
如果你希望防火墙在系统重启后也保持关闭状态,需要禁用它的开机启动:
sudo systemctl disable firewalld
3. 检查防火墙状态
要检查防火墙当前的运行状态,可以使用以下命令:
sudo systemctl status firewalld
如果显示 inactive 或 dead,则表示防火墙已成功关闭。
文件和目录操作命令
cd /home 进入 ‘/ home’ 目录’
cd … 返回上一级目录
cd …/… 返回上两级目录
cd 进入个人的主目录
cd ~user1 进入个人的主目录
cd - 返回上次所在的目录
pwd 显示工作路径
ls 查看目录中的文件
ls -F 查看目录中的文件
ls -l 显示文件和目录的详细资料
ls -a 显示隐藏文件
mkdir dir1 创建一个叫做 ‘dir1’ 的目录’
mkdir dir1 dir2 同时创建两个目录
mkdir -p /tmp/dir1/dir2 创建一个目录树
rm -f file1 删除一个叫做 ‘file1’ 的文件’
rmdir dir1 删除一个叫做 ‘dir1’ 的目录’
rm -rf dir1 删除一个叫做 ‘dir1’ 的目录并同时删除其内容
rm -rf dir1 dir2 同时删除两个目录及它们的内容
mv dir1 new_dir 重命名/移动 一个目录
cp file1 file2 复制一个文件
cp dir/* . 复制一个目录下的所有文件到当前工作目录
cp -a /tmp/dir1 . 复制一个目录到当前工作目录
cp -a dir1 dir2 复制一个目录
ln -s file1 lnk1 创建一个指向文件或目录的软链接
ln file1 lnk1 创建一个指向文件或目录的物理链接
touch file1 创建一个文件
文件搜索命令
cat file1 从第一个字节开始正向查看文件的内容
tac file1 从最后一行开始反向查看一个文件的内容
more file1 查看一个长文件的内容
less file1 类似于 ‘more’ 命令,但是它允许在文件中和正向操作一样的反向操作
head -2 file1 查看一个文件的前两行
tail -2 file1 查看一个文件的最后两行 5.挂载命令
mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘 (注:确定目录 ‘/ mnt/hda2’ 已经存在)
umount /dev/hda2 卸载一个叫做hda2的盘 (先从挂载点 ‘/ mnt/hda2’ 退出)
fuser -km /mnt/hda2 当设备繁忙时强制卸载
umount -n /mnt/hda2 运行卸载操作而不写入 /etc/mtab 文件(当文件为只读或当磁盘写满时非常有用)
mount /dev/fd0 /mnt/floppy 挂载一个软盘
mount /dev/cdrom /mnt/cdrom 挂载一个光盘
mount /dev/hdc /mnt/cdrecorder 挂载一个cdrw或dvdrom
mount /dev/hdb /mnt/cdrecorder 挂载一个cdrw或dvdrom
mount -o loop file.iso /mnt/cdrom 挂载一个文件或ISO镜像文件
mount -t vfat /dev/hda5 /mnt/hda5 挂载一个Windows FAT32文件系统
mount /dev/sda1 /mnt/usbdisk 挂载一个usb 捷盘或闪存设备
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个windows网络共享
03-08
0
win常用命令
1.Dxdiag是Windows的DirectX诊断工具
win10搜索框 或则 cmd
dxdiag
2.win10激活 管理员模式运行cmd
slmgr/ipk W269N-WFGWX-YVC9B-4J6C9-T83GX
3.微信双开脚本 保存为 微信双开.bat
@echo off
start "" "C:\Users\Public\Desktop\WeChat.exe"
start "" "C:\Users\Public\Desktop\WeChat.exe"
exit
4.查询局域网内IP 物理地址
查看本地IP信息 ipconfig/ALL
ipconfig/ALL
遍历 所有IP
for /L %i IN (100,1,200) DO ping -w 2 -n 1 192.168.1.%i
查看 IP物理地址
arp -a
03-06
0
TP框架 搭建socket
composer切换到国内阿里镜像 执行
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
进入到thinkphp项目的根目录下 执行
composer update
安装workerman 执行
composer require topthink/think-worker dev-master
如果要在win下做服务,继续执行
composer require workerman/workerman-for-win
在根目录创建Worker.php作为启动服务文件
#! /usr/bin/env php
<?php
define('APP_PATH',__DIR__ .'/application');
define('BIND_MODULE','push/Worker');
// //加载框架引导文件
require __DIR__. '/thinkphp/start.php';
创建push模块Worker控制器作为服务处理类
<?php
namespace app\push\controller;
use think\worker\Server;
class Worker extends Server{
protected $socket = 'websocket://0.0.0.0:6001';
/**
* 收到消息
* @param $connection
* @param $data
*/
public function onMesssage($connection,$data){
$connection->send('我收到你的信息了');
}
/**
* 当连接被建立时触发的回调函数
* @param $connection
*/
public function onConnect($connection){
}
/**
* 当连接断开时触发的回调函数
* @param $connection
*/
public function onClose($connection){
}
/**
* 当客户端的连接发生错误时触发
* @param $connection
* @param $code
* @param $msg
*/
public function onError($connection,$code,$msg){
echo "error : $code $msg \n";
}
}
安装think-worker 1.0.*版本
composer require topthink/think-worker 1.0.*
返回到项目根目录 执行
php Worker.php start -d
打开Chrome 浏览器,在console(控制器)里键入
03-01
0
v2rayN 安装
客户端:
mac :
https://github.com/mengyalei/V2RayX
windws :
https://github.com/2dust/v2rayN
服务端安装命令:
centos 系统安装:
bash <(curl -s -L https://git.io/v2ray.sh)
ubuntu/debian 系统安装 Curl 方法:
apt-get update -y && apt-get install curl -y
centos 系统安装 Curl 方法:
yum update -y && yum install curl -y
02-26
0
PHP中常用方法
PHP 求两个日期相差天数
function diffBetweenTwoDays ($day1, $day2)
{
$second1 = strtotime($day1);
$second2 = strtotime($day2);
if ($second1 < $second2) {
$tmp = $second2;
$second2 = $second1;
$second1 = $tmp;
}
return ($second1 - $second2) / 86400;
}
PHP中调用URL
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://www.baidu.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
PHP文件操作
- “r” (只读方式打开,将文件指针指向文件头)
- “r+” (读写方式打开,将文件指针指向文件头)
- “w” (写入方式打开,清除文件内容,如果文件不存在则尝试创建之)
- “w+” (读写方式打开,清除文件内容,如果文件不存在则尝试创建之)
- “a” (写入方式打开,将文件指针指向文件末尾进行写入,如果文件不存在则尝试创建之)
- “a+” (读写方式打开,通过将文件指针指向文件末尾进行写入来保存文件内容)
- “x” (创建一个新的文件并以写入方式打开,如果文件已存在则返回 FALSE 和一个错误)
- “x+” (创建一个新的文件并以读写方式打开,如果文件已存在则返回 FALSE 和一个错误)
$file = fopen("test.txt","r");
$file = fopen("/home/test/test.txt","r");
$file = fopen("/home/test/test.gif","wb");
$file = fopen("http://www.example.com/","r");
$file = fopen("ftp://user:password@example.com/test.txt","w");
//写入数据
$content = "";
file_put_contents($path,$content, FILE_APPEND );
//读取从.csv文件
$fp = fopen($path, 'r');
while($line = fgetcsv($fp)){
echo $line;
}
fclose($fp);
PHPExcel
require_once '/www/wwwroot/tp5/public/phpexcel/PHPExcel.php';
$user_path = "/www/wwwroot/tp5/public/uploads/";
$objPHPExcel = new \PHPExcel();
// 设置sheet
$objPHPExcel->setActiveSheetIndex(0);
// 设置列的宽度
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
// 设置表头
$objPHPExcel->getActiveSheet()->SetCellValue('A1', '昵称');
// 设置数据
$objPHPExcel->getActiveSheet()->SetCellValue('A' . $num, $v['nickname']);
// 文件名称
$fileName = "文件" . date('Y-m-d', time()) . rand(1, 1000);
$xlsName = iconv('utf-8', 'gb2312', $fileName);
//dump($xlsName);die;
// 设置工作表名
$objPHPExcel->getActiveSheet()->setTitle('sheet');
//下载 excel5与excel2007
$objWriter = new \PHPExcel_Writer_Excel2007($objPHPExcel);
$objWriter->save($user_path.$fileName.'.xls');