面试3

第一部分 Linux
1.将文件 nginx.conf 的权限改为 -rwxr-xr--

2.找出 /etc 下,大于50K,所有者是 root 的文件,并将权限完整的列出

find /etc -size +50k ! -user root -exec ls -l {} \;

3.简述Hard Link 与 Symbolic Link 的区别
Linux中硬连接(hard link)与软连接(symbolic link)的区别

4.将 /home/root 目录下的 test.tar.gz 解压缩到 /data/www

tar zxvf   /home/root/test.tar.gz    -C   /data/www

5.判断 /tmp/abc 目录是否存在,若存在则在该目录下新建文件 myfile

ls /tmp/abc && touch /tmp/abc/myfile

6.写一段shell脚本关闭本机的mysql服务(提示:通过端口号和pid)

#!/bin/sh

mysql_port=3306
mysql_username="root"
mysql_password=""

function_start_mysql()
{
printf "Starting MySQL...\n"
/bin/sh /data/mysql/bin/mysqld_safe --defaults-file=/data/mysql/${mysql_port}/my.cnf 2>&1 > /dev/null &
}

function_stop_mysql()
{
printf "Stoping MySQL...\n"
/data/mysql/bin/mysqladmin -u ${mysql_username} -p${mysql_password} -S /data/mysql/mysql.sock shutdown

}

function_restart_mysql()
{
printf "Restarting MySQL...\n"
function_stop_mysql
sleep 5
function_start_mysql
}

function_kill_mysql()
{
kill -9 $(ps -ef | grep 'bin/mysqld_safe' | grep ${mysql_port}

| awk '{printf $2}')
kill -9 $(ps -ef | grep 'libexec/mysqld' | grep ${mysql_port}

| awk '{printf $2}')
}

if [ "$1" = "start" ]; then
function_start_mysql
elif [ "$1" = "stop" ]; then
function_stop_mysql
elif [ "$1" = "restart" ]; then
function_restart_mysql
elif [ "$1" = "kill" ]; then
function_kill_mysql
else
printf "Usage: /data/mysql/${mysql_port}/mysql

{start|stop|restart|kill}\n"
fi
————————————————
版权声明:本文为CSDN博主「dodomail」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/dodomail/article/details/84411159
  1. 如何把用户 sam 添加到用户组 docker?
1. 创建docker用户组
sudo groupadd docker
2. 应用用户加入docker用户组
sudo usermod -aG docker ${USER}
3. 重启docker服务
sudo systemctl restart docker
4. 切换或者退出当前账户再从新登入

su root             切换到root用户
su ${USER}          再切换到原来的应用用户以上配置才生效

8.如何查看本机放行的端口号?如何放行本机指定的端口号?
9.LINUX删除文件,但空间不释放
LINUX删除文件,但空间不释放l

第二部分 SQL


面试3_第1张图片
image.png

3.查询年龄大于20的学生信息, 结果按 last_name 降序排列

4.把 Zhang San 的年龄改为20

5.删除 last_name 为 "Li" 的学生记录

6.视图如何创建?有什么作用?

  1. 如何创建存储过程,存储过程有什么作用?

第三部分 自动化

  1. selenium定位元素时,如何等待元素加载完成?有几种等待方式?

2.如何跳过不想执行的自动化用例?如何指定测试用例执行的先后顺序?

3.页面刷新后如何重新定位元素?

4.当页面跳转时如何比较两个页面的数据?

5.测试用例中点击页面按钮时,报该按钮不可点击的错误,但单独调试点击该按钮却不报错。

出现这种情况可能的原因是什么,如何解决?

  1. XPATH 如何定位相对元素?

  2. selenium1.0 和 selenium2.0 的主要区别是什么?selenium2.0的优点是什么?

  3. Jenkins 中,访问git仓库的凭证(credentials)如何配置,有几种配置方法?

  4. selenium 如何驱动远程浏览器启动?

  5. jenkins中的视图是什么意思?

  6. jenkins 如何配置自动触发构建

  7. Selenium RC 和 WebDriver 的区别?

第四部分 代码基础
1.git fetch 和 git pull 的区别是什么

2.git 如何修改最后一次提交的 message信息(提交说明);如何让文件在工作目录中保存,但从版本控制中删除?

3.对字符串 s = " Hello World " 做如下处理

(1)去除全部空格

(2)去除前后空格

(3)去除前后空格,并且中间只保留一个空格

4.python 如何抛出异常(Exception),如何捕获异常,异常处理机制和 java 有何不同?

5.用两种方法输出斐波纳契数列(0,1,1,2,3 ...)

6.python 中,如何从 dictionary(字典) 中取一个随机元素

  1. python中,if name == 'main' 判断语句的作用是什么,name 变量代表什么?

8.如何序列化一个 python 对象,如何通过反序列化构造一个python对象? java中又是如何实现序列化和反序列化?

9.什么是 Lambda 表达式,用 Lambda 表达式的作用是什么?

  1. git 工作目录中的文件状态有几种,分别是什么?

  2. Maven 如何配置公司私服,如何配置镜像地址?

  3. java 中变量分为几类?primitive 型变量包含哪几种?

  4. python中的生成器(generator)和迭代器(iterator)是什么关系?

  5. 在当前分支有文件修改的情况下,git如何切换分支?

15.java 如果对第三方包有依赖,如何解决?

第五部分 编程题
有一个字符串 “This is a programming issue”,找出其中出现次数最多的字符,不区分大小写

输出指定长度的斐波纳契数列. 1,1,2,3,5, ...

求 N 的阶乘

你可能感兴趣的:(面试3)