📅  最后修改于: 2023-12-03 15:03:46.357000             🧑  作者: Mango
这是一个用 Shell-Bash 编写的 Pinterest 克隆 Github 的程序。该程序可以让用户创建账户、上传图片、浏览图片和喜欢图片。它是一个用于学习 Shell-Bash 的绝佳示例,它可以帮助你更好地理解 Shell-Bash 的各种概念和语法。
要运行这个程序,你需要具备以下要求:
克隆本仓库:
git clone https://github.com/pinterest-clone/pinterest-clone-github-shell.git
进入程序目录:
cd pinterest-clone-github-shell
修改配置文件:
cp config.sample.sh config.sh
nano config.sh
在 config.sh
文件中填入你的 Github 用户名和密码、你的 MySQL 数据库信息。
导入数据库:
mysql -u username -p database_name < database.sql
注意:需要事先创建好 database_name
数据库,数据库用户需要有权限导入数据库。
运行程序:
bash start.sh
然后在浏览器中打开 http://localhost:8080
。
该程序包含以下功能:
该程序是用 Shell-Bash 编写的,它使用了以下技术:
以下是程序的部分代码:
#!/bin/bash
# 登录
function login {
read -p "请输入您的 Github 用户名:" github_username
read -s -p "请输入您的 Github 密码:" github_password
echo
# 通过 Github API 验证用户信息
response=$(curl -s -u "${github_username}:${github_password}" "https://api.github.com/user")
if [[ $response =~ "login" ]]; then
# 登录成功
echo "登录成功"
logged_in=true
else
# 登录失败
echo "用户名或密码错误,请重试!"
logged_in=false
fi
}
# 注册
function register {
read -p "请输入您的用户名:" username
# 查询用户名是否可用
if [[ $(mysql -u${db_user} -p${db_password} -h${db_host} -P${db_port} -D${db_name} -N -s -e "SELECT COUNT(*) FROM users WHERE username='${username}'") -eq 0 ]]; then
read -s -p "请输入您的密码:" password
echo
mysql -u${db_user} -p${db_password} -h${db_host} -P${db_port} -D${db_name} -e "INSERT INTO users (username, password) VALUES ('${username}', MD5('${password}'))"
echo "注册成功"
else
echo "用户名已存在,请重试!"
fi
}
通过这个项目,你可以更好地理解 Shell-Bash 的语法和各种概念。同时,你也可以结合 Github API 和其他技术,构建出更加复杂的应用程序。