
计算机日常使用
Windows,macOS以及Linux日常使用中的一些记录
卡尔曼和玻尔兹曼谁曼
面朝大海,春暖花开
展开
-
Windows字体美化指南
有人可能只是不喜欢Windows平台下字体渲染的效果,即在低分屏幕下显示模糊,我不但不能忍受Windows平台的字体渲染,更重要的是对Windows默认的字体非常不喜欢(个人喜好,不喜勿喷),但是由于有些专业软件只有Windows版本,而且有时候给本科生上课不可能用macOS演示。我解决的方案是:使用FontCreator将苹方版的宋体的中文名称也修改为SimSun,然后将原始的simsun.ttc分割为两个文件分布命名为宋体.ttf和新宋体.ttf,然后将这两个宋体文件安装到系统字体。原创 2022-09-16 09:00:57 · 2787 阅读 · 1 评论 -
Launchpad中图标的删除
从App Store中下载的软件,可以通过按住Option按键然后图标右上角出现❌号进行删除。但是,如果右上角没有❌号怎么办呢? macOS中的LaunchPad使用sqlite数据库进行图标信息的管理。所以要手动进行删除的话,必须找到该数据库然后通过SQL进行删除。 我的系统版本为: 我的操作步骤如下: 1. 查找存储Launchpad数据库的位置 其中cd $(sudo fin原创 2016-09-16 21:16:35 · 6885 阅读 · 0 评论 -
macOS下Java多版本管理
本文介绍macOS下使用HomeBrew和jEnv进行Java多版本管理升级HomeBrew (首先你得安装HomeBrew)brew update允许brew命令查找版本信息brew tap caskroom/versions查看Java版本brew cask search java安装Java8brew cask install java8安装jEnV版本管理工具...原创 2018-04-09 23:32:42 · 2866 阅读 · 0 评论 -
macOS下GDAL Java开发环境搭建
文章目录macOS下GDAL Java开发环境搭建GDAL源码编译安装Maven安装本地JAR使用Java版GDAL示例版权声明:本文为博主原创文章,转载请注明原文出处!写作时间:2020年4月9日下午macOS下GDAL Java开发环境搭建今天在笔记本(macOS平台)上折腾了一下如何搭建GDAL的Java开发环境。虽然GDAL的Python接口更好用,但是有时候需要协同使用一些J...原创 2020-04-09 17:50:57 · 2380 阅读 · 5 评论 -
macOS下安装ENVI
首先,下载ENVI5.0破解版(版权原因,网络自行搜索)然后安装依赖的软件: 1. Java6 下载 - Java for OS X 2015-001 2. XQuartz https://www.xquartz.org然后进行ENVI5.0的安装: 点击pkg安装包一路[下一步]安装完完成接下来进行破解: ENVI5.0附带的是IDL8.2版本 拷贝破解文件libidl.8.2.dyli原创 2018-01-19 01:55:06 · 14262 阅读 · 5 评论 -
macOS下的iCloud的文件夹
macOS的iCloud Drive出现在个人收藏中,如何像普通文件夹那样操作iCloud的文件夹怎么办呢?比如从命令行复制移动文件到iCloud? 原来在macOS中iCloud文件夹的路径如下:~/Library/Mobile\ Documents/com~apple~CloudDocs 可以再Finder中使用快捷键Command+Shift+G进行查看: 所以我在我自己的用户目录下原创 2017-02-18 17:29:39 · 20593 阅读 · 0 评论 -
Shell脚本循环读取文件中的每一行
使用for循环for line in `cat filename`do echo $linedone或者for line in $(cat filename)do echo $linedone使用while循环while read -r linedo echo $linedone < filename今天遇到一个问题弄了好久才搞明白:我想在循环中动态链接字符串,代码如下原创 2016-10-07 19:01:09 · 62233 阅读 · 0 评论 -
gcc编译参数:如何包含头文件和动态链接库
以上一个代码实例gdal计算NDVI为例: 如何在Linux下使用gcc进行编译? (顺便说一下,上次的代码只能在gdal1下编译,因为gdal2和1的API稍微有些改动) gdal的动态链接库如果采用默认的安装方式应该在/usr/local/lib目录下面,而头文件在/usr/include/gdal目录下面。 那么,我们的编译命令应该是这样的:g++ NDVI.cpp -std=c++1原创 2016-09-08 16:28:34 · 4746 阅读 · 0 评论 -
Shell遍历文件
方法一:#! /bin/bashbasedir=/home/theonefor file in $basedir/*do echo $filedone注意:$basedir/*不要写成$basedir"/*",虽然作为字符串两个是相等的。方法二:#! /bin/bashbasedir=/home/theonefor file in `ls $basedir`do echo原创 2016-09-06 08:21:34 · 775 阅读 · 0 评论 -
Geohash第三方库示例
关于什么是Geohash可以参考这篇文章Java实现空间索引编码(GeoHash),个人觉得写得不错。Github上有一个Geohash的开源库geohash-java,这篇文章主要通过一个示例说说geohash-java这个库怎么用。 好了,开门,放代码!package cn.tzy.geohash;import java.util.ArrayList;import java.util.Lis原创 2016-09-16 23:12:51 · 11365 阅读 · 0 评论 -
时期和ANSI Date之间的转换
一个具体日期的ANSI Date指的是该日期到1600年12月31日经过的天数。 1601年1月1日的ANSI Date为1。 在Linux中使用如下命令,我们可以查看从1600-12-31经过134775天以后的日期。date -ud '1600-12-31 + 134775 day' +%F结果是:1970-01-01此外,date命令还有一个格式参数%s可以输出1970-01-01 00:原创 2016-09-06 15:37:15 · 1228 阅读 · 0 评论 -
Linux下Boot的编译和使用
其实Linux下的编译安装过程和Window下的是差不多的(Windows下Boot的编译和使用) 首先在官网下载安装包进行解压,然后执行bootstrap.sh脚本。tar -xzvf boost_1_62_0.tar.gzcd boost_1_62_0./bootstrap.sh然后进行编译安装,默认安装路径是/usr/local。所以,相应的头文件在/usr/local/include/原创 2016-10-08 16:09:01 · 1240 阅读 · 0 评论 -
Linux下Shell脚本的调试
这篇博文是对Debugging Shell Scripts in Linux的翻译,希望能帮助到在Linux下写Shell脚本的童鞋。大多数编程语言都有可用的调试工具,调试工具可用在执行程序或脚本的时候让你检查其内部是如何进行的。对于Shell脚本,我们没有任何可用的调试工具,唯一有的是通过命令行的标识(-n,-v和-x)来辅助我们调试脚本。Disabling the Shell (-n optio翻译 2017-01-18 23:35:56 · 3892 阅读 · 0 评论 -
Linux删除制定时间的文件
如果想要批量删除制定时间的文件,可以使用find命令:find /home -maxdepth 1 -type f -newermt "Nov 22" -printfind命令查找/home 目录下的十一月22日创建的类型是文件的该层文件并打印输出 -maxdepth 用于设置查找的最大层数,设置为1是不让递归查找 -type 制定查找的类型 -newermt 制定查找的时间 如果我们使用-原创 2017-03-17 20:04:45 · 1505 阅读 · 0 评论 -
Ubuntu使用apt-get update命令时提示Hash Sum mismatch错误的解决方案
新安装的Ubuntu 14.04 LTS,进行sudo apt-get update命令更新源的时候总是提示Hash Sum mismatch错误,再网上找了很多办法。 有的办法,有时候有用,有时候不起作用。先说说,网上常见的办法,最后说说一劳永逸的解决方案。方案一:更换软件下载的源,可以通过System Settings的Software & Updates进行源设置。方案二:使用如下命令:原创 2017-03-01 20:57:13 · 6227 阅读 · 0 评论 -
Ubuntu下GDAL读取HDF4(MODIS影像)开发环境搭建
今天打算使用GDAL读取MODIS影像数据,由于我的MODIS是HDF4格式,而默认的GDAL是不包含HDF数据驱动的,所以必须重新编译GDAL。 我的开发环境是Ubuntu 14.04,首先安装需要的HDF包。 sudo apt-get install libhdf4-alt-dev libhdf5-dev libnetcdf-dev hdf4-tools hdf5-tools libgeos原创 2017-03-15 16:32:16 · 2585 阅读 · 0 评论 -
Shell脚本中字符串的一些常用操作
Shell脚本中字符串的一些常用操作字符串长度${#string}可以获得${string}的长度例子:string='How are you'echo ${#string} # 输出结果为11字符串取子串${string:position:length} 在${string}中, 从位置${position}开始提取长度为${length}的子串例子:...原创 2018-05-19 00:07:51 · 7444 阅读 · 0 评论 -
虚拟机下安装CentOS无法上网的解决方案
我使用VMware虚拟机安装Ubuntu和CentOS,都使用NAT模式连接网络,但是Ubutun可以正常上网,而CentOS不能连接到网络。原来Centos7默认是不启用有线网卡的,需要手动开启。操作步骤如下:首先,打开终端。cd /etc/sysconfig/network-scripts/ls 查看一下ifcfg-eno后面对应的数字是什么,以eno32为例切换到原创 2015-08-22 11:17:58 · 2569 阅读 · 0 评论 -
Ubuntu安装MySQL密码初始化问题
在Ubuntu上使用sudo apt-get install mysql-server mysql-common 命令安装MySQL以后,安装过程中没有提示输入密码。然后使用mysql -u root -p 进行登录,然后要求输入密码,可是不管怎么输入,都提示密码错误,那怎么解决呢?方案如下:打开/etc/mysql/debian.cnf文件,在这个文件中有系统默认给我们分配的用户名和密码,通过这原创 2016-07-02 10:29:37 · 17607 阅读 · 5 评论 -
Ubuntu下Python版的GDAL安装以及使用
这里使用 ubuntugis提供的gdal进行安装。 首先更新一下ubuntugis的源:sudo add-apt-repository ppa:ubuntugis && sudo apt-get update或者sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable && sudo apt-get update这里科普一下PPA(摘自百度原创 2016-02-29 19:53:29 · 13279 阅读 · 4 评论 -
Ubuntu下pip工具安装遇到的问题
Ubuntu 14.04.3环境下进行Python开发的时候遇到如下问题。 安装pip的时候,首先需要安装setuptools,使用命令sudo apt-get install python-setuptools进行setuptools的安装。 出现如下错误:The following packages have unmet dependencies: build-essential : De原创 2016-02-25 19:35:55 · 9765 阅读 · 0 评论 -
VIM tab设置为4个空格
在.vimrc中添加以下代码后,重启vim即可实现按TAB产生4个空格: set ts=4 (注:ts是tabstop的缩写,设TAB宽4个空格) set expandtab对于已保存的文件,可以使用下面的方法进行空格和TAB的替换: TAB替换为空格: :set ts=4 :set expandtab :%retab!空格替换为TAB: :set ts=4 :set noexpa转载 2015-09-03 10:29:34 · 2809 阅读 · 0 评论 -
Ubuntu下开启SSH服务
在VMware WorkStation下,安装了Ubuntu,然后在Windows桌面使用XManager的XShell连接我的Ubuntu,可是同时提示连接失败。然后我用Windows的CMD命令提示符Ping了一下Ubuntu的IP,结果连接正常,为什么使用XShell会连接不上了,所以我猜猜是Ubuntu默认没有开启SSH服务。SSH分客户端openssh-client和服务端ope原创 2015-08-27 16:25:22 · 6969 阅读 · 0 评论 -
Linux VIM自动提示插件安装配置
GitHub上有大牛奉献了自己的配置方案,这里我做个推广,希望能帮助到需要使用VIM的童鞋。 GitHub网址:https://github.com/wklken/k-vim原创 2015-08-31 17:13:21 · 1669 阅读 · 0 评论 -
关于Linux中使用vim打开文件出现^M的解决方法
在Linux下,不可避免的会用VIM打开一些Windows下编辑过的文本文件。我们会发现文件的每行结尾都会有一个^M符号,这是因为 DOS下的编辑器和Linux编辑器对文件行末的回车符处理不一致,对于回车符的定义:Windows:0D0AUnix\Linux:0AMAC: 0D为了解决这个问题,网上搜索了一圈,发现了下列几种办法:(1)使用VI的命令:使用vi打开文本文转载 2015-08-28 11:56:59 · 4772 阅读 · 0 评论 -
Tomcat在Linux中的启动和查看相关信息
打开终端 cd /java/tomcat 执行 bin/startup.sh #启动tomcat bin/shutdown.sh #停止tomcat tail -f logs/catalina.out #看tomcat的控制台输出;看是否已经有tomcat在运行了 ps -ef |grep tomcat 如果有,用kill命令 kill -9 pid #pid 为相应的进程号例如 p转载 2015-05-23 16:10:22 · 1638 阅读 · 3 评论 -
Linux下修改环境变量
首先来看修改环境变量的位置,我们可以在那些地方修改环境变量? 1. /etc/profile:对所有用户生效;此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行;并从/etc/profile.d目录的配置文件中搜集shell的设置 2. /etc/bashrc:对所有用户生效;为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取 3.原创 2015-05-19 10:35:03 · 847 阅读 · 0 评论 -
Linux下各文件夹的含义
在 Linux系统里面,“分区”,被称作“挂载点”,简单明了的说,“挂载点”意思就是:把一部分硬盘容量,“分”成一个文件夹的形式,用来干什么事情。这个文件夹的名字,就叫做:“挂载点”。所以,和Windows有着本质上的超级大的区别,你在任何linux发行版系统里面,绝对不会看到C盘,D盘,E 盘这样的,你能看到的,只有“文件夹”形式存在的“挂载点”。 在Linux 系统里面,有一些已转载 2014-10-30 09:39:15 · 1012 阅读 · 0 评论 -
Ubuntu下通过SSH远程登录服务器
首先在服务器上安装ssh的服务器端。 $ sudo apt-get install openssh-server启动ssh-server。 $ /etc/init.d/ssh restart确认ssh-server已经正常工作。 $ netstat -tlp tcp6 0 0 :ssh :* LISTEN - 看到上面这一行输出说明ssh-server已经在运行了。在Ubuntu客户转载 2015-05-19 11:28:08 · 1210 阅读 · 1 评论 -
Linux下java和javac版本不同(设置用户默认的java版本)解决方法
我的Ubutn下安装了OpenJDK和Oracle的JDK,然后我在用户自己的配置文件(~./profile)中设置JAVA_HOME(24到28行),然后,我在命令行中执行java -version和javac -version发现其版本号不一样。我用which命令判断其java和javc的命令,发现javac其实是/usr/bin/javac下的,再用file查看其属性,发原创 2015-09-02 21:59:56 · 11135 阅读 · 0 评论 -
Linux下locale: Cannot set LC_CTYPE to default locale: No such file or directory警告
在Linux下使用locale命令提示如下警告:locale: Cannot set LC_CTYPE to default locale: No such file or directorylocale: Cannot set LC_MESSAGES to default locale: No such file or directorylocale: Cannot set LC_A原创 2015-09-27 15:54:14 · 35665 阅读 · 1 评论 -
Linux下Tomcat端口号以及进程相关命令
1. 查看tomcat进程ps -aux | grep tomcat(或者ps -ef | grep tomcat都行)root 1537 0.1 3.7 12829256 1248140 ? Sl Oct13 ...(这里其它内容省略)tomcat7 14177 1.3 0.3 3202376 124332 ? Sl 10:原创 2015-10-14 10:38:53 · 32143 阅读 · 0 评论 -
LINUX下gdb无法debug,提示ImportError: No module named 'libstdcxx'
Ubuntu下使用gdb调试C++程序,提示:ImportError: No module named ‘libstdcxx’。貌似CentOS没有这样的问题。这是我的开发环境:theone@ubuntu:~$ gcc --versiongcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4Copyright (C) 2013 Free Software Foundati原创 2015-10-22 15:25:42 · 3772 阅读 · 0 评论 -
VMware扩展磁盘大小
首先在VMware Station中我的计算机虚拟机列表中需要磁盘扩容的虚拟机上右键,然后选择设置,在弹出的面板中选择硬件选项卡中的硬盘,然后选择扩展,在弹出的对话框中输入扩展磁盘大小。然后登陆虚拟机(我这里是Ubuntu系统)。使用sudo df -ah可以看到磁盘大小是变大了,但是还是只有原来默认的分区,我们扩展的磁盘其实是使用不了的。我们必须手动进行分区,然后进行加载。使用sudo fdi原创 2015-10-22 17:43:08 · 3612 阅读 · 0 评论 -
CentOS下安装g++编译器
在CentOS上使用yum安装C++开发环境: 安装gcc的命令:sudo yum install gcc 安装g++的命令:sudo yum install gcc-c++原创 2015-10-22 10:39:42 · 2759 阅读 · 0 评论 -
使用sudo时user is not in sudoers file的解决
在Ubuntu下安装系统以后第一个创建的用户默认是在sudo用户组的,所以以sudo执行命令没有问题。如果想让新添加的用户也能拥有使用sudo的权利,我们一般可以使用adduser username sudo这样的命令将用户添加到sudo组中即可(username为你的用户名)。在CentOS安装系统以后,默认创建的用户没有使用sudo的权限,会提示user is not in s原创 2015-10-21 22:14:50 · 9189 阅读 · 0 评论 -
Insecure directory in $ENV{PATH} while running with -T switch at /usr/bin/pg_ctlclust
今天在reload postgresql数据库配置的时候,postgresql数据库的perl脚本抛出: Insecure directory in $ENV{PATH} while running with -T switch at /usr/bin/pg_ctlclust 然后reload失败。错误提示中$ENV{PATH}是指的是用户的PATH环境变量的值,这个错误的大概意思就是说,PAT原创 2015-09-30 11:47:13 · 1972 阅读 · 0 评论 -
Linux下创建用户命令
如何使用Linux命令行创建新的用户呢?我是在Ubuntu下进行的,例如添加名为test的新用户:最简单的命令:sudo adduser test会自动将该用户添加到同名组中,创建/home/test/,从etc/skel/复制文件,并设定密码和相关初始身份信息。原始一点的命令:sudo useradd -mk /home/test -s /bin/bash t原创 2015-08-29 14:45:39 · 5287 阅读 · 0 评论 -
Linux开机自动挂载外部设备
比如我们要将/dev/sdb1挂载到/mnt/data目录。 在命令行中我们首先创建该目录,然后执行挂载:mkdir -p /mnt/datamount /dev/sdb1 /mnt/data如果要卸载,执行:unmount /dev/sdb1 /mnt/data那如何实现开机自动挂载呢? 我们编辑/etc/fstab文件vim + /etc/fstab然后添加如下内容/dev/sdb1原创 2015-09-28 12:29:43 · 1163 阅读 · 0 评论 -
-bash: ./startup.sh: Permission denied 解决
今天在Linux上启动Tomcat,结果弹出:-bash: ./startup.sh: Permission denied 的提示。 这是因为用户没有权限,而导致无法执行, 用命令chmod 修改一下bin目录下的.sh权限就可以了 chmod u+x *.sh 这里的u 这里指文件所有者,+x 添加可执行权限,*.sh表示所有的sh文件。原创 2015-05-21 16:53:49 · 11461 阅读 · 0 评论