@Blog{zip358.com}
日常日誌からプログラムやYOUTUBER紹介、旅日記まで日々更新中です。
githubの複数アカウントをWindowsで切り替えするbatファイルとexeファイルです。
2022.02.23
おはよう御座います。今日もあまり日中も気温が上がらないそうです😪。
フルリモートで働く人が多くなってきていますよね、そんな中、githubを仕事用と個人用と分けたい人が多いとかと思いますが、そんな人向けにツールを作りましたので紹介します。
githubの複数アカウントをWindowsで切り替えするbatファイルとexeファイルを作りましたので、お裾分けです、どこかのサイトにgithubのアカウントを切り替えるシェルスクリプトが記載していたのですが、自分はWindowsユーザーなのでそれ使えねぇーという事で作りました。
自分用なので、エラー取りはしていません、最低限の処理しか書いていないです。exeファイルの方はzipファイルにしてサーバに置いときます、尚、ご自身の良いような感じでgitdata.datファイルの中身を書き換えてください。考え方はbatファイルと同じです。
batファイルの方はこちらに記載しますので、ご自身でbatファイルを作成してください。尚、Windowsが開発環境になっていない、gitが環境変数に登録されていない場合は動きませんので悪しからず。必ず起動するときはコマンドからパラメーター投げて使ってください。
@echo off
if %1==main (
git config --global user.name "example"
git config --global user.email "mail@example.com"
)
if %1==sub (
git config --global user.name "test"
git config --global user.email "mail@test.com"
)
git config user.name
git config user.email
exeファイルの注意事項、PowerShellでもcmd.exeでも開けますが必ずgit-name.exeファイルが存在するディレクトリに移動してexeファイルをパラメーター付きで実行してください。
./git-name.exe main
main <==パラメーター
example <==githubのユーザー名
mail@example.com <==githubのメールアドレス
exeファイルのtoolはこちらからダウンロードしてください。
※尚、ウィルススキャン対象になった場合は対象から外してお使いください。
https://zip358.com/tool/git-name.zip
著者名 @taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
Bat, dat, exe, gitdata, github, Windows, zip, アカウント, エラー, お裾分け, ご自身, サーバ, サイト, シェル, スクリプト, それ, ツール, どこか, ファイル, プル, ユーザー, リモート, 中, 中身, 事, 人, 今日, 仕事, 個人, 処理, 感じ, 方, 日中, 最低限, 気温, 紹介, 考え方, 自分, 複数, 記載,
お気をつけて。
2021.02.28
zip358で検索するとzip358.comが終了しましたというサイトが何件か表示されますが、それをクリックするとweb attackでブラウザの脆弱性よりパソコンに侵入しようとしますのでお気をつけてください。なので、zip358.comとアドレスバー(URLバー)に入力することを強くオススメします。
ちなみにzip358.comが閉鎖するとか考えていないし、アメーバブログとかに移行するつもりもないです。グーグルやyahoo検索でも普通のサイトが標的になるということがあるので、必ずパソコンにはウィルススキャンのソフトを導入することをおすすめします。例えばノートンというソフトやウィルスバスターとかですかね。自分が思うにノートンは結構優秀なソフトだと思います。
たまに自分の作ったexeソフトもウィルスと間違って削除されることもありますが・・・。
という事で、くれぐれもお気をつけてください。
著者名 @taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
358, attack, com, exe, url, web, Yahoo, zip, アドレス, アメーバ, ウィルス, ウィルスバスター, おすすめ, お気, グーグル, クリック, くれぐれ, こと, サイト, スキャン, ソフト, それ, たま, つもり, ノートン, バー, パソコン, ブラウザ, ブログ, 事, 何件, 侵入, 優秀, 入力, 削除, 導入, 普通, 検索, 標的, 移行, 終了, 脆弱性, 自分, 表示, 閉鎖,
bingから画像を一括ダウンロードするアプリ。
2020.06.14
任意のキーワード検索でbing画像からを一括ダウンロードするアプリを作りました。img-dl-bing-sss.exeファイルを起動すると動画のようなコンソール画面が開くので入力してダウンロードを開始してください。ダウンロードが終わると勝手に閉じます。
なお、一応R指定にも対応しています、キーワードがR指定項目かもと思う場合、Yと入力ください。
新垣結衣さんの熱烈なファンでもないですが、綺麗な方だとは思います。ということで例として使用させて頂きました、、、関係者の皆様ごめんなさい。
このアプリはウィンドウズ10環境で動作します。また、動作しないブロックされる場合は下記のURL等を参照しブロックを解除しお使いください。ブロック解除方法:https://forest.watch.impress.co.jp/docs/news/1130655.html
※なお、Bingサイトのデザインが変わった場合、動作しなくなりますのであしからず。
画像ダウンロードアプリのソースコードはこちら(古いコードですので動かない場合がありますVS2019C#)
using System;
using System.Runtime.CompilerServices;
namespace img_dl_bing_sss
{
class Program
{
static void Main(string[] args)
{
string keyword = "",R18="";
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("処理中は画面や立ち上がったブラウザを閉じないでください。\n" +
"処理が完了すると「***終了します***」と表示されます。\n" +
"何かキーを押し終了してください\n\n");
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("↓検索キーワードを入力しエンターを押してください");
keyword = Console.ReadLine();
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("↓R指定ですか?\nY or N かの文字を入力しエンターを押してください");
R18 = Console.ReadLine();
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***画像のダウンロード量(画像数ではありません) 1?999 ***");
var scroll = 9999;
try
{
scroll = int.Parse(Console.ReadLine());
if(scroll >=1 && scroll <= 999)
{
scroll = scroll * 9999;
}
}
catch
{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***検索キーワードが不適切です。***");
}
SuiteTests img = new SuiteTests();
if (img.Imgdlok(keyword, R18, scroll))
{
img.Dispose();
}
else {
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***検索キーワードが不適切です。***");
}
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***終了します***");
}
}
}
// Generated by Selenium IDE
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium.Remote;
using OpenQA.Selenium.Support.UI;
using OpenQA.Selenium.Interactions;
using Xunit;
using AngleSharp;
using AngleSharp.Html.Parser;
using AngleSharp.Html.Dom;
using AngleSharp.Dom;
using System.Runtime.InteropServices;
using Newtonsoft.Json;
using System.IO;
using System.Net;
public class SuiteTests : IDisposable {
public IWebDriver driver {get; private set;}
public IDictionary<String, Object> vars {get; private set;}
public IJavaScriptExecutor js {get; private set;}
public SuiteTests()
{
driver = new ChromeDriver();
js = (IJavaScriptExecutor)driver;
vars = new Dictionary<String, Object>();
}
public void Dispose()
{
driver.Quit();
}
public bool Imgdlok(string keyword="", string R18= "",int scroll = 999999)
{
if (keyword == "") return false;
Console.Clear();
string path = System.IO.Directory.GetCurrentDirectory() + "\\IMG\\";
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
driver.Navigate().GoToUrl("https://www.bing.com/?scope=images&nr=1&FORM=NOFORM");
driver.Manage().Window.Size = new System.Drawing.Size(945, 1030);
driver.FindElement(By.Id("sb_form_q")).Click();
driver.FindElement(By.Id("sb_form_q")).SendKeys(keyword);
driver.FindElement(By.CssSelector(".search.icon.tooltip")).Click();
try
{
if (R18 == "Y")
{
driver.FindElement(By.LinkText("設定の変更")).Click();
driver.FindElement(By.CssSelector("#settings_safesearch div:nth-child(3)")).Click();
driver.FindElement(By.Id("adlt_set_off")).Click();
driver.FindElement(By.Id("sv_btn")).Click();
driver.FindElement(By.Id("adlt_confirm")).Click();
}
}
catch
{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***R指定ではありません***");
}
try
{
double ps = 0;
for (int i = 99; i < scroll;i+=1000)
{
js.ExecuteScript("window.scrollTo(0," + i + ")");
Console.CursorLeft = 0;
ps = (double)(((double)i / (double)scroll) * 100);
Console.Write("処理中::{0:D2}%",(int)ps);
}
}
catch
{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***Max画像まで到達しました***");
}
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("\n***ダウンロード処理開始***\n");
int cnt = 0;
var elm = driver.FindElements(By.ClassName("iusc"));
driver.Manage().Window.Minimize();
foreach (var e in elm) {
dynamic jsondata = JsonConvert.DeserializeObject(e.GetAttribute("m"));
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine((string)jsondata.murl + "::wait.....");
string imgurl = (string)jsondata.murl;
if(4 <= Path.GetExtension(imgurl).Length && Path.GetExtension(imgurl).Length <= 5)
{
try
{
cnt++;
string ext = Path.GetExtension(imgurl);
WebClient myWebClient = new WebClient();
myWebClient.DownloadFile(imgurl, path + "No-" + cnt + "-" + keyword + ext);
myWebClient.Dispose();
Console.ForegroundColor = ConsoleColor.Cyan;
Console.WriteLine("***" + cnt +"::" + imgurl + "\n::ダウンロード中、画面を閉じないでください...***");
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("***" + cnt + "::ダウンロード済***");
}
catch
{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***ダウンロードが失敗しました***");
}
}else{
Console.ForegroundColor = ConsoleColor.Yellow;
Console.WriteLine("***画像の拡張子が不明のためダウンロードが失敗しました***");
}
}
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine("***ダウンロード完了しました***\n" + path);
return true;
}
}
著者名 @taoka_toshiaki
※この記事は著者が40代前半に書いたものです.
Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki
タグ
10, bing, exe, img-dl-bing-sss, url, VS, アプリ, ウィンドウズ, キーワード, コード, こちら, こと, コンソール, サイト, ソース, ダウンロード, デザイン, ファイル, ファン, ブロック, 一括, 下記, 任意, 使用, 例, 入力, 動作, 動画, 勝手, 参照, 場合, 対応, 指定, 新垣結衣, 方, 方法, 検索, 環境, 画像, 画面, 皆様, 等, 綺麗, 解除, 起動, 開始, 関係者, 項目,