
&& \ rsync -av --delete --itemize-changes --dry-run mktemp -d/ /mnt/pool0/pool0-dataset1-nfs/Downloads/ && rmdir /mnt/pool0/pool0-dataset1-nfs/Downloads/ find /mnt/pool0/pool0-dataset1-nfs/test -depth -type d -empty -delete openssl pkcs12 -export -out certificate.pfx -inkey /etc/letsencrypt/live/blog.travisrunyard.us-0001/privkey.pem -in /etc/letsencrypt/live/blog.travisrunyard.us-0001/cert.pem -certfile /etc/letsencrypt/live/blog.travisrunyard.us-0001/chain.pem /mnt/pool0/pool0-dataset1-nfs/jailconf/openvpn /mnt/pool0/iocage/jails/transmission/root/usr/local/etc/openvpn more_vert /mnt/pool0/pool0-dataset1-nfs/torrent-complete /mnt/pool0/iocage/jails/transmission/root/mnt/torrent-complete more_vert /mnt/pool0/pool0-dataset1-nfs/torrent-incomplete /mnt/pool0/iocage/jails/transmission/root/mnt/torrent-incomplete more_vert /mnt/pool0/pool0-dataset1-nfs/Downloads /mnt/pool0/iocage/jails/transmission/root/mnt/Downloads 00505603aa46 00505603aa47 find /mnt/pool0/pool0-dataset1-nfs/torrent-complete/ -mtime +7d -print0 | xargs -0 /bin/rm -f /usr/local/etc/pkg/repos /usr/local/etc/pkg/repos /usr/local/etc/pkg/repos usla2-ovpn-udp.ovpn.bak dev tun ;auth-user-pass persist-key persist-tun for file in $(find . -mindepth 1 -type f -name '.MP3'); do mv -v "$file" "$(sed -i 's/\.MP3/\.mp3/g')"; done for file in $(find . -mindepth 1 -type f -name '.MP3'); do sed -i 's/MP3/mp3/g' $file; done '[%a] - [%t] - [%n] - [%s].mp3' for d in ls -d |xargs -0; do mv "$d" "$(echo "$d" | sed s/\.+/\./)"; done for d in ls -d |xargs -0; do mv "$d" "$(echo "$d" | sed s/ \- Ehhh//)"; done for d in find /home/UserName/mnt/pool0/p0ds0smb/Gs/video/ -type d -depth; do mv -vf "$d" "echo $d | tr '[./-$]' '[a-z']"; done for f in 'Cowboy Bebop 1-26 Complete 720p/'; do mv "$f" "$(echo "$f" | sed s/[CBM]_//)"; done for f in ; do mv "$f" echo $f | tr '-' ''; done for f in find; do mv -v "$f" "echo $f | tr '[A-Z]' '[a-z]'"; done for f in find . -print0; do mv -v "$f" "echo $f | tr '[A-Z]' '[a-z]'"; done for f in find /mnt/pool0/pool0-dataset1-nfs/Scripts -print0; do echo "$f" "echo $f | tr '[A-Z]' '[a-z]'"; done for f in find /mnt/pool0/pool0-dataset1-nfs/Scripts -type f -print0; do mv -v "$f" "echo $f | tr '[A-Z]' '[a-z]'"; done for f in find . -type f -print0; do mv -v "$f" "echo $f | tr '[CBM]_' ''"; done for file in $(find . -mindepth 1 -type f); do sed -i 's/\[SBM\]_//g' $file; done for file in $(find . -mindepth 1 -type f); do mv -v "$file" "$(sed -i 's/[CBM]_//g')"; done # This one works for f in ; do mv "$f" "$(echo $f | sed 's/^\[CBM\]_//g')"; done for f in ; do mv "$f" "$(echo $f | sed 's/^Django$/pOOp/g')"; done 's/^\[CBM\]_//g' s/^Django./pOOp/g find . -name "fgh" -type f -print0 | xargs -0 -I {} sh -c 'mv "{}" "$(dirname "{}")/echo $(basename "{}") | sed 's/^fgh/jkl/g'"' find . -name "fgh" -type f -print0 | xargs -0 -I {} sh -c 'mv "{}" "$(dirname "{}")/echo $(basename "{}") | sed 's/^fgh/jkl/g'"' find /mnt/pool0/pool0-dataset1-nfs/scripts -type d | awk -F"/" '$NF != tolower($NF) {l = n = $0; sub($NF "$", tolower($NF), n); print "mv " l " " n;}' | tac find /home/UserName/mnt/pool0/p0ds0smb/Gs/video/ -type d | awk -F"/" '$NF != tolower($NF) {l = n = $0; sub($NF "$", tolower($NF), n); print "mv " l " " n;}' | tac #Best case renamer find . -depth -exec rename 's/(.)\/([^\/])/$1\/\L$2/' {} \; find . -depth |while read LONG; do SHORT=$( basename "$LONG" | tr '[:upper:]' '[:lower:]' ); DIR=$( dirname "$LONG" ); if [ "${LONG}" != "${DIR}/${SHORT}" ]; then mv "${LONG}" "${DIR}/${SHORT}" ; fi; done find . -depth |while read LONG; do SHORT=$( basename "$LONG" | tr '[:upper:]' '[:lower:]' ); DIR=$( dirname "$LONG" ); if [ "${LONG}" != "${DIR}/${SHORT}" ]; then mv "${LONG}" "${DIR}/${SHORT}" ; fi; done '.[Ss]eason.' 8003005616 0 0 /usr/local/etc/rc.d/atop rotate >/dev/null (( $(ps -ef | grep -v grep | grep $service | wc -l) > 0 )) [code]System: Host: UserNamefx-mint Kernel: 4.15.0-48-generic x86_64 bits: 64 compiler: gcc v: 7.3.0 Desktop: Cinnamon 4.0.10 Distro: Linux Mint 19.1 Tessa base: Ubuntu 18.04 bionic Machine: Type: Laptop System: ASUSTeK product: GL502VMZ v: 1.0 serial: Mobo: ASUSTeK model: GL502VMZ v: 1.0 serial: UEFI: American Megatrends v: GL502VMZ.301 date: 03/29/2017 Battery: ID-1: BAT0 charge: 49.0 Wh condition: 50.3/64.4 Wh (78%) model: ASUSTeK ASUS Battery status: Not charging CPU: Topology: Quad Core model: Intel Core i7-7700HQ bits: 64 type: MT MCP arch: Kaby Lake rev: 9 L2 cache: 6144 KiB flags: lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 44928 Speed: 3756 MHz min/max: 800/3800 MHz Core speeds (MHz): 1: 3162 2: 2622 3: 2843 4: 2808 5: 2872 6: 2819 7: 3095 8: 2770 Graphics: Device-1: NVIDIA GP106M [GeForce GTX 1060 Mobile] vendor: ASUSTeK driver: nvidia v: 390.116 bus ID: 01:00.0 Display: x11 server: X.Org 1.19.6 driver: nvidia unloaded: fbdev,modesetting,nouveau,vesa resolution: 1920x1080~60Hz, 1920x1080~60Hz OpenGL: renderer: GeForce GTX 1060/PCIe/SSE2 v: 4.6.0 NVIDIA 390.116 direct render: Yes Audio: Device-1: Intel CM238 HD Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel bus ID: 00:1f.3 Device-2: Logitech type: USB driver: hid-generic,snd-usb-audio,usbhid bus ID: 1-6.4:9 Sound Server: ALSA v: k4.15.0-48-generic Network: Device-1: Intel Wireless 8260 driver: iwlwifi v: kernel port: e000 bus ID: 03:00.0 IF: wlp3s0 state: up mac: Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet vendor: ASUSTeK driver: r8169 v: 2.3LK-NAPI port: d000 bus ID: 04:00.0 IF: enp4s0 state: up speed: 1000 Mbps duplex: full mac: IF-ID-1: docker0 state: down mac: Drives: Local Storage: total: 6.82 TiB used: 3.58 TiB (52.5%) ID-1: /dev/nvme0n1 vendor: Samsung model: SSD 970 EVO 500GB size: 465.76 GiB ID-2: /dev/sda vendor: Western Digital model: WD20SPZX-21UA7T0 size: 1.82 TiB temp: 40 C ID-3: /dev/sdb type: USB vendor: Seagate model: BUP BK size: 3.64 TiB ID-4: /dev/sdc type: USB model: External USB3.0 size: 931.51 GiB Partition: ID-1: / size: 44.04 GiB used: 16.98 GiB (38.6%) fs: ext4 dev: /dev/nvme0n1p5 Sensors: System Temperatures: cpu: 69.0 C mobo: N/A gpu: nvidia temp: 50 C Fan Speeds (RPM): N/A Info: Processes: 445 Uptime: 5d 13h 19m Memory: 23.49 GiB used: 16.22 GiB (69.0%) Init: systemd runlevel: 5 Compilers: gcc: 7.4.0 Shell: bash v: 4.4.19 inxi: 3.0.27[/code] [img]https://doc-14-6c-docs.googleusercontent.com/docs/securesc/ha0ro937gcuc7l7deffksulhg5h7mbp1/4m5jnvubt362ioc25rshd69fevrr9tap/1557201600000/00570648748561251740//1eeAnDgqzwM7XJxUol-Xoa-8z7C-ddgEj?e=view[/img] --include '[Cc]omplete' --include '[Ss]eries' --include '[Ss]eason' --include '[Ss][0-9]' --include '[Ee]pisode' --include '[Ee][0-9]' --exclude '' --itemize-changes --exclude '[Ss]eries' --exclude '[Cc]omplete' --exclude '[Ss]eason' --exclude '[Ss][0-9]' --exclude '[Ee][0-9]' --exclude '.part' --itemize-changes --verbose /usr/local/bin/rclone --config --bwlimit -v --stats 1s sync remote:/ the -v and --stats 1s prints progress every second so remove it if you dont need it or pipe it to a log file f.e. in my case i tried: /usr/local/bin/rclone --config /root/rclone --bwlimit 100 -v --stats 1s sync /mnt/NAS/Photography remote:freenas-cloud-backup/Photography screen -dmS rclone rclone sync /mnt/pool0/pool0-dataset0-smb/archive_pictures gdrive:/backup/pool0-dataset0-smb screen -dmS gdrive-rclone02 rclone sync --bwlimit 5M --progress --checksum --no-update-modtime --transfers 6 --checkers 12 --update -v /mnt/pool0/pool0-dataset0-smb/wordpress gdrive-rclone02:/backup/pool0-dataset0-smb/wordpress screen -dmS gdrive-rclone02 rclone sync --bwlimit 5M --progress --checksum --no-update-modtime --transfers 6 --checkers 12 --update -v /mnt/pool0/pool0-dataset0-smb/wordpress gdrive-rclone02:/backup/pool0-dataset0-smb/wordpress screen -dmS gdrive-rclone01 rclone sync --bwlimit 5M --progress --checksum --no-update-modtime --transfers 6 --checkers 12 --update -v /mnt/pool0/pool0-dataset0-smb gdrive-rclone01:/backup/pool0-dataset0-smb rclone sync --drive-client-id <redacted> --drive-client-secret <redacted> --bwlimit 5M --progress --checksum --no-update-modtime --transfers 6 --checkers 12 --update -v /mnt/pool0/pool0-dataset0-smb gdrive:/backup/pool0-dataset0-smb /msg NickServ identify UserName /msg NickServ SETPASS UserName /msg NickServ REGISTER <redacted> travisrunyard@gmail.com /msg NickServ REGISTER <redacted> travisrunyard@gmail.com /msg NickServ VERIFY REGISTER blog.travisrunyard.us <redacted> 5gb 0:1 [SSD2.5480GVMFS6-1] FreeNAS-11.2-RELEASE-U1/FreeNAS-11.2-RELEASE-U1.vmdk 25gb 0:2 [SSD2.5480GVMFS6-1] FreeNAS-11.2-RELEASE-U1/FreeNAS-11.2-RELEASE-U1_1.vmdk mysqldump -u table -p host > ./db.sql && sed -i 's/find/replace/g' ./db.sql && mysql -u table -p host < ./db.sql || echo 'error' wp-user/<redacted> screen -dmS gdrive-rclone02 rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 8 --checkers 16 --update -v /mnt/pool0/pool0-dataset0-smb/UserName gdrive-rclone02:/backup/pool0-dataset0-smb/UserName screen -dmS gdrive-rclone02 rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 8 --checkers 16 --update -v /mnt/pool0/pool0-dataset0-smb/UserName gdrive-rclone02:/backup/pool0-dataset0-smb/UserName screen -dmS gdrive-tr01 rclone copy --bwlimit 4M --progress --checksum --no-update-modtime --transfers 12 --checkers 20 --update -v gdrive-tr01: /mnt/pool0/pool0-dataset2-gdrive screen -dmS gdrive-tr01 rclone copyto --bwlimit 5M --progress --checksum --no-update-modtime --drive-pacer-min-sleep 500ms --drive-skip-checksum-gphotos --transfers 10 --checkers 20 --update -vv gdrive-tr01: /mnt/pool0/pool0-dataset2-gdrive --filter "- /Google Photos/" screen -dmS gdrive-rclone01 rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 10 --checkers 20 --update -v --exclude "/Working/" /mnt/pool0/pool0-dataset0-smb gdrive-rclone01:/backup/pool0-dataset0-smb [root@rclone ~]# rclone size gdrive-tr01: Total objects: 13400 Total size: 84.811 GBytes (91064592828 Bytes) screen -dmS gdrive-tr01-default rclone copy --bwlimit 3M --progress --drive-skip-checksum-gphotos --transfers 10 --update -vv --include "/Google Photos/" gdrive-tr01-default: /mnt/pool0/pool0-dataset2-gdrive && screen -r gdrive-tr01-default screen -dmS gdrive-tr01 rclone copy --drive-skip-checksum-gphotos --include "/Google Photos/" --bwlimit 3M --progress --no-update-modtime --transfers 10 --checkers 10 --tpslimit 6 --update --delete-excluded --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --stats-one-line --log-level NOTICE --low-level-retries 30 gdrive-tr01: /mnt/pool0/pool0-dataset2-gdrive 2>&1 | tee -a ~/.config/rclone/gdrive-tr01.log && screen -r gdrive-tr01 @reboot root /usr/local/bin/screen -dmS gdrive-rclone01 rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 10 --checkers 16 --update -v --filter "- /[G-g]irls/ - /temp/" --delete-excluded --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --log-file $HOME/.config/rclone/$$.log --log-level ERROR --low-level-retries 30 /mnt/pool0/pool0-dataset0-smb gdrive-rclone01:/backup/pool0-dataset0-smb screen -dmS gdrive-rclone02 rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 10 --checkers 12 --update --filter "- /[G-g]irls/ - /temp/" --delete-excluded --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --stats-one-line --log-file $HOME/.config/rclone/$$.log --log-level DEBUG --low-level-retries 30 /mnt/pool0/pool0-dataset0-smb gdrive-rclone02:/backup/pool0-dataset0-smb 2>&1 screen -dmS gdrive-rclone01 rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 10 --checkers 10 --tpslimit 6 --update --filter "- /[G-g]irls/ - /temp/" --delete-excluded --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash false --log-level NOTICE --low-level-retries 30 /mnt/pool0/pool0-dataset0-smb gdrive-rclone01:/backup/pool0-dataset0-smb 2>&1 | tee -a ~/.config/rclone/gdrive-rclone01.log && screen -r gdrive-rclone02 rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 10 --checkers 12 --update --filter - /[G-g]irls/ - /temp/ --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --stats-one-line --log-level DEBUG --low-level-retries 30 /mnt/pool0/pool0-dataset0-smb gdrive-rclone03:/backup/pool0-dataset0-smb sed -i -E "s/pool0\-dataset1\-nfs/p0ds1nfs/g" /etc/fstab && sed -i -E "s/pool0\-dataset0\-smb/p0ds0smb/g" /etc/fstab 2>&1 && echo done sed -i -E "s/pool0\-dataset1\-nfs/p0ds1nfs/g" /etc/crontab && sed -i -E "s/pool0\-dataset0\-smb/p0ds0smb/g" /etc/crontab 2>&1 && echo done @reboot root /usr/local/bin/screen -dmS gdrive-rclone01 rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 10 --checkers 10 --tpslimit 6 --update --filter-from ~/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --log-level NOTICE --low-level-retries 30 /mnt/pool0/p0ds0smb gdrive-rclone01:/backup/pool0-dataset0-smb 2>&1 | tee ~/.config/rclone/gdrive-rclone01.log # @reboot root /usr/local/bin/screen -dmS gdrive-tr01 rclone copy --drive-skip-checksum-gphotos --bwlimit 3M --progress --no-update-modtime --transfers 10 --checkers 10 --tpslimit 6 --update --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --stats-one-line --log-level NOTICE --low-level-retries 30 gdrive-tr01: /mnt/pool0/p0ds3gdrive 2>&1 | tee ~/.config/rclone/gdrive-tr01.log find /mnt/pool0/p0ds0smb/video- -depth -type d -iname "sample" -print0 | xargs -0 /bin/rm -rfv ; find /mnt/pool0/p0ds0smb/video-movies -type f ! -iname ".mp4" ! -iname ".avi" ! -iname ".srt" ! -iname ".mkv" ! -iname ".sub" ! -iname ".jpg" ! -iname ".jpeg" ! -iname ".png" ! -iname ".sfv" ! -iname ".mpg" ! -iname ".mpeg" ! -ipath "episode" ! -ipath 'sub' ! -ipath "video_ts" -delete p # /etc/crontab - root's crontab for FreeBSD # # $FreeBSD: src/etc/crontab,v 1.33.2.1 2009/08/03 08:13:06 kensmith Exp $ # SHELL=/bin/sh PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin # #minute hour mday month wday who command # /5 root /usr/libexec/atrun > /dev/null 2>&1 # # Save some entropy so that /dev/random can re-seed on boot. /11 operator /usr/libexec/save-entropy > /dev/null 2>&1 # # Rotate log files only at midnight. 0 0 root newsyslog > /dev/null 2>&1 # # Perform daily/weekly/monthly maintenance. 1 3 root periodic daily 15 4 6 root periodic weekly 30 5 1 root periodic monthly # # Adjust the time zone if the CMOS clock keeps local time, as opposed to # UTC time. See adjkerntz(8) for details. 1,31 0-5 root adjkerntz -a > /dev/null 2>&1 0 root /bin/sh /usr/local/sbin/save_rrds.sh > /dev/null 2>&1 0 root /usr/local/bin/python /usr/local/bin/mfistatus.py > /dev/null 2>&1 15 3 root /usr/local/bin/python /usr/local/www/freenasUI/tools/cachetool.py expire >/dev/null 2>&1 30 3 root /usr/local/bin/python /usr/local/www/freenasUI/tools/cachetool.py fill >/dev/null 2>&1 45 3 root /usr/local/bin/python /usr/local/www/freenasUI/middleware/notifier.py backup_db >/dev/null 2>&1 0 3 root find /tmp/ -iname "sessionid" -ctime +1d -delete > /dev/null 2>&1 30 /5 root /etc/ix.rc.d/ix-kinit renew > /dev/null 2>&1 45 3 root /usr/local/libexec/nas/scrub -t 7 freenas-boot 3,11,19,37,53 root PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin" /usr/bin/find /mnt/pool0/p0ds1nfs/torrent-complete/ -mtime +3d -print0 2>/dev/null | xargs -0 /bin/rm -rfv 2>/dev/null ; /usr/bin/find /mnt/pool0/p0ds1nfs/torrent-complete/ -depth -type d -empty -print0 2>/dev/null | xargs -0 rm -rfv > /dev/null 0 root PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin" /usr/bin/find /mnt/pool0/p0ds0smb/video- -depth -type d -iname "sample" -print0 | xargs -0 /bin/rm -rfv ; /usr/bin/find /mnt/pool0/p0ds0smb/video-movies -type f ! -iname ".mp4" ! -iname ".avi" ! -iname ".srt" ! -iname ".mkv" ! -iname ".sub" ! -iname ".jpg" ! -iname ".jpeg" ! -iname ".png" ! -iname ".sfv" ! -iname ".mpg" ! -iname ".mpeg" ! -ipath "episode" ! -ipath 'sub' ! -ipath "video_ts" -delete > /dev/null /15 root PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin" /usr/bin/lockf -s -t 0 -k "/mnt/pool0/p0ds1nfs/torrent-complete/" /usr/local/bin/rsync -r -t --delay-updates --exclude '[Ss]eries' --exclude '[Cc]omplete' --exclude '[Ss]eason' --exclude '[Ss][0-9]' --exclude '[Ee][0-9]' --exclude '.part' --itemize-changes --verbose "/mnt/pool0/p0ds1nfs/torrent-complete/" "root"@freenas::"rsync-transmission" > /dev/null 2>&1 2>&1 |/usr/bin/logger -t rsync 13,23,41,59 root PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin" /usr/bin/lockf -s -t 0 -k "/mnt/pool0/p0ds1nfs/torrent-complete/" /usr/local/bin/rsync -r -t --delay-updates --include '[Cc]omplete' --include '[Ss]eries' --include '[Ss]eason' --include '[Ss][0-9]' --include '[Ee]pisode' --include '[Ee][0-9]' --exclude '' --itemize-changes "/mnt/pool0/p0ds1nfs/torrent-complete/" "root"@freenas::"rsync-transmission-shows" > /dev/null 2>&1 2>&1 |/usr/bin/logger -t rsync 00 00 7 root PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin" /usr/local/libexec/nas/scrub -t 35 pool0 root /usr/local/bin/python /usr/local/www/freenasUI/tools/autosnap.py > /dev/null 2>&1 39 2 root /usr/local/bin/midclt call update.download > /dev/null 2>&1 @weekly root /usr/local/sbin/update-smart-drivedb > /dev/null 2>&1 "exclude" : [ "/var/", "/lost+found/", "/home/test/", "/mnt/", "/media/", "/run/", "/tmp/", "/timeshift/", "/var/cache/", "/var/run/", "/var/spool/", "/var/tmp/", "/home/UserName/mnt/", "/home/UserName/temp/", "+ /home/UserName/", "+ /root/" ], YInaDMabTrlPCm0wE&UvfW$ZQo%c8qVno!$fKk^ zfs destroy pool0/p0ds0smb@%20190507 /usr/bin/find /mnt/pool0/p0ds1nfs/torrent-/ -mtime +3d ! -name '.part' -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null ; /usr/bin/find /mnt/pool0/p0ds1nfs/torrent-/ -depth -type d -empty -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null zfs list -H -t snapshot -o name,used -S used screen -dmS gdrive-rclone04 rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 10 --checkers 10 --tpslimit 6 --update --filter-from ~/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --log-level NOTICE --low-level-retries 30 /mnt/pool0/p0ds0smb/video-movies gdrive-rclone04:/backup/p0ds0smb/video-movies 2>&1 | tee ~/.config/rclone/gdrive-rclone04.log rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 10 --checkers 10 --tpslimit 6 --update --filter-from ~/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --log-level NOTICE --low-level-retries 30 /mnt/pool0/p0ds0smb/video-movies gdrive-rclone04:/backup/p0ds0smb/video-movies 2>&1 | tee ~/.config/rclone/gdrive-rclone04.log screen -dmS gdrive-rclone05 rclone sync --bwlimit 1M --progress --checksum --no-update-modtime --transfers 5 --checkers 5 --tpslimit 6 --update --filter-from ~/.config/rclone/filter-file-rclone05.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --log-level NOTICE --low-level-retries 30 /mnt/pool0/p0ds0smb/software_wintel gdrive-rclone05:/backup/p0ds0smb/software_wintel 2>&1 | tee ~/.config/rclone/gdrive-rclone05.log 0 0 /usr/local/etc/rc.d/atop rotate >/dev/null 3107703610 +Host : \==+Hardware Info : |----BIOS UUID................................................0x3 0x0 0x2 0x0 0x4 0x0 0x5 0x0 0x0 0x6 0x0 0x7 0x0 0x8 0x0 0x9 |----BIOS Vendor..............................................American Megatrends Inc. |----BIOS Version.............................................1.09 |----BIOS ReleaseDate.........................................2016-08-02T00:00:00 |----BIOS Asset Tag...........................................Default string |----Product Name.............................................Default string |----Vendor Name..............................................EVGA INTERNATIONAL CO.,LTD |----Serial Number............................................Default string |----Enclosure Serial Number..................................Default string |----Hardware Uptime..........................................828228700950 at scbus2 target 0 lun 0 (pass1,da0) at scbus2 target 1 lun 0 (pass2,da1) at scbus2 target 2 lun 0 (pass3,da2) at scbus2 target 5 lun 0 (pass4,da3) at scbus2 target 9 lun 0 (pass5,da4) [HDD3.55TVMFS6-1] FreeNAS-11.2-RELEASE-U1/FreeNAS-11.2-RELEASE-U1_4.vmdk openssl pkcs12 -export -out ./cert_pkcs12_sysinfo.pfx -inkey /etc/letsencrypt/live/blog.travisrunyard.us-0001/privkey.pem -in /etc/letsencrypt/live/blog.travisrunyard.us-0001/fullchain.pem find ~/mnt/pool0/p0ds0smb/wordpress/ -mindepth 1 -print | wc -l for dir in $(find ~/mnt/pool0/p0ds0smb/ -mindepth 1); do echo "${dir}: $(find ${dir} -maxdepth 1 | wc -l)" done for dir in $(find "~/mnt/pool0/p0ds0smb/temp/" -type d -print); do echo "$(dir): $(find '$dir' -maxdepth 1 -type f| wc -l)"; done tree ~/mnt/pool0/p0ds0smb/temp | awk 'END{print}' ls -l ~/mnt/pool0/p0ds0smb/temp | grep ^- | wc -l for f in ; do [ -d ./"$f" ] && find ./"$f" -maxdepth 1 -exec echo \; | wc -l && echo $f; done for dir in find . -maxdepth 1 -printf '%f\n'; do echo "$dir": $(find -mindepth 1 -printf '%i\n' | wc -l); done #Report count of files and directories together as objects for each 2nd-level directory for directory in / ; do D=$(readlink -f "$directory") ; echo $D = $(find "$D" -mindepth 1 | wc -l) ; done #Report objects (sum of subdirectories + files), files, and subdirectories for directory in temp/ ; do D=$(readlink -f "$directory") ; echo "$D (Objects = $(find "$D" -mindepth 1 | wc -l), Files = $(find "$D" -mindepth 1 -type f | wc -l), Subdirs = $(find "$D" -mindepth 1 -type d | wc -l))" ; done transmission-remote -n UserName:Passwordf8 -l | awk '$9 == "Finished"{ system("transmission-remote -n UserName:Password -t " $1 " -l -rad" ) }' Implement, setup, configure, maintain and decommission bare metal and VM of all versions from Windows Server 2003 - 2016. This includes on-prem, co-lo, and cloud instances on AWS, Rackspace, Digital Ocean. Single-handedly plan for, test, prepare and execute a simultaneous active directory and exchange server upgrade and migration. I had an issue with the X500 record attribute of the user objects that caused internal to internal mail to not deliver. After pushing out a change to erase the auto-complete cache of Outlook clients, they began to rebuild with the correct properties and the issue was resolved. That was a 17 hour Saturday which I documented on my site https://blog.travisrunyard.us/active-directory-migration-2003-2008-r2/ Prioritizing essential, routine, and future tasks/projects accordingly while attending to random fires analogous to the spoke in the wheel. I always try to give people the benefit of the doubt. Since this presumes I know they have more experience I'd definitely value their opinion and try to analyze it in a very detailed manner (that may catch potential issues the peer overlooked), but lay my cards on the table and let the decision-maker/manager decide for him/herself which opinion to proceed with. One problem or another has to take precedence, usually based on scope of impact or quantity of users affected. Try to offhand the lesser of the problems to team-members to focus on the primary in order to tackle all issues simultaneously. This is easier said than done but it's usually beneficial to everyone when done properly. /usr/bin/find /mnt/pool0/p0ds1nfs/torrent-/ -mtime +3d ! -name '.part' -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null ; /usr/bin/find /mnt/pool0/p0ds1nfs/torrent-/ -depth -type d -empty -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null /usr/bin/find /mnt/pool0/p0ds1nfs/torrent-/ ! -path "/torrent-hold/" -mtime +3d ! -name '.part' -print0 2>/dev/null WWW.YIFY-TORRENTS.COM.jpg /usr/bin/find /mnt/pool0/p0ds0smb/video- -depth -type d -iname "sample" -print0 | xargs -0 /bin/rm -rfv ; /usr/bin/find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f ! -iname ".mp4" ! -iname ".avi" ! -iname ".srt" ! -iname ".mkv" ! -iname ".sub" ! -iname ".jpg" ! -iname ".jpeg" ! -iname ".png" ! -iname ".sfv" ! -iname ".mpg" ! -iname ".mpeg" ! -iname ".nfo" -iname "YIFY.jpg" ! -ipath "episode" ! -ipath 'sub' ! -ipath "video_ts" -delete ; /usr/bin/find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f -iname "YIFY.jpg" -delete /usr/bin/find /mnt/pool0/p0ds0smb/video- -depth -type d -iname "sample" -print0 | xargs -0 /bin/rm -rfv ; /usr/bin/find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f ! -iname ".mp4" ! -iname ".avi" ! -iname ".srt" ! -iname ".mkv" ! -iname ".sub" ! -iname ".jpg" ! -iname ".jpeg" ! -iname ".png" ! -iname ".sfv" ! -iname ".mpg" ! -iname ".mpeg" ! -iname ".nfo" ! -ipath "episode" ! -ipath 'sub' ! -ipath "video_ts" -print0 | xargs -0 /bin/rm -rfv ; /usr/bin/find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f -iname "YIFY.jpg" -print0 | xargs -0 /bin/rm -rfv /usr/bin/find /mnt/pool0/p0ds0smb/video- -depth -type d -iname "sample" -print0 | xargs -0 /bin/rm -rfv 1> /dev/null ; /usr/bin/find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f ! -iname ".mp4" ! -iname ".avi" ! -iname ".srt" ! -iname ".mkv" ! -iname ".sub" ! -iname ".jpg" ! -iname ".jpeg" ! -iname ".png" ! -iname ".sfv" ! -iname ".mpg" ! -iname ".mpeg" ! -iname ".nfo" ! -ipath "episode" ! -ipath 'sub' ! -ipath "video_ts" -print0 | xargs -0 /bin/rm -rfv > /dev/null ; /usr/bin/find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f -iname "YIFY.jpg" -print0 | xargs -0 /bin/rm -rfv /usr/bin/find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f \( ! -iname ".mp4" ! -iname ".avi" ! -iname ".srt" ! -iname ".mkv" ! -iname ".sub" ! -iname ".jpg" ! -iname ".jpeg" ! -iname ".png" ! -iname ".sfv" ! -iname ".mpg" ! -iname ".mpeg" ! -iname ".nfo" \) / Copyright 2013 The Chromium Authors. All rights reserved. Use of this source code is governed by a BSD-style license that can be found in the LICENSE file. / / Dont use the main frame div when the error is in a subframe. / html[subframe] #main-frame-error { display: none; } / Dont use the subframe error div when the error is in a main frame. / html:not([subframe]) #sub-frame-error { display: none; } .icon { -webkit-user-select: none; display: inline-block; } .icon-generic { / Cant access chrome://theme/IDR_ERROR_NETWORK_GENERIC from an untrusted renderer process, so embed the resource manually. / content: -webkit-image-set( url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABIAQMAAABvIyEEAAAABlBMVEUAAABTU1OoaSf/AAAAAXRSTlMAQObYZgAAAENJREFUeF7tzbEJACEQRNGBLeAasBCza2lLEGx0CxFGG9hBMDDxRy/72O9FMnIFapGylsu1fgoBdkXfUHLrQgdfrlJN1BdYBjQQm3UAAAAASUVORK5CYII=) 1x, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACQAQMAAADdiHD7AAAABlBMVEUAAABTU1OoaSf/AAAAAXRSTlMAQObYZgAAAFJJREFUeF7t0cENgDAMQ9FwYgxG6WjpaIzCCAxQxVggFuDiCvlLOeRdHR9yzjncHVoq3npu+wQUrUuJHylSTmBaespJyJQoObUeyxDQb3bEm5Au81c0pSCD8HYAAAAASUVORK5CYII=) 2x); } .icon-offline { content: -webkit-image-set( url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABIAQMAAABvIyEEAAAABlBMVEUAAABTU1OoaSf/AAAAAXRSTlMAQObYZgAAAGxJREFUeF7tyMEJwkAQRuFf5ipMKxYQiJ3Z2nSwrWwBA0+DQZcdxEOueaePp9+dQZFB7GpUcURSVU66yVNFj6LFICatThZB6r/ko/pbRpUgilY0Cbw5sNmb9txGXUKyuH7eV25x39DtJXUNPQGJtWFV+BT/QAAAAABJRU5ErkJggg==) 1x, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACQBAMAAAAVaP+LAAAAGFBMVEUAAABTU1NNTU1TU1NPT09SUlJSUlJTU1O8B7DEAAAAB3RSTlMAoArVKvVgBuEdKgAAAJ1JREFUeF7t1TEOwyAMQNG0Q6/UE+RMXD9d/tC6womIFSL9P+MnAYOXeTIzMzMzMzMzaz8J9Ri6HoITmuHXhISE8nEh9yxDh55aCEUoTGbbQwjqHwIkRAEiIaG0+0AA9VBMaE89Rogeoww936MQrWdBr4GN/z0IAdQ6nQ/FIpRXDwHcA+JIJcQowQAlFUA0MfQpXLlVQfkzR4igS6ENjknm/wiaGhsAAAAASUVORK5CYII=) 2x); position: relative; } .icon-disabled { content: -webkit-image-set( url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHAAAABICAMAAAAZF4G5AAAABlBMVEVMaXFTU1OXUj8tAAAAAXRSTlMAQObYZgAAASZJREFUeAHd11Fq7jAMRGGf/W/6PoWB67YMqv5DybwG/CFjRuR8JBw3+ByiRjgV9W/TJ31P0tBfC6+cj1haUFXKHmVJo5wP98WwQ0ZCbfUc6LQ6VuUBz31ikADkLMkDrfUC4rR6QGW+gF6rx7NaHWCj1Y/W6lf4L7utvgBSt3rBFSS/XBMPUILcJINHCBWYUfpWn4NBi1ZfudIc3rf6/NGEvEA+AsYTJozmXemjXeLZAov+mnkN2HfzXpMSVQDnGw++57qNJ4D1xitA2sJ+VAWMygSEaYf2mYPTjZfk2K8wmP7HLIH5Mg4/pP+PEcDzUvDMvYbs/2NWwPO5vBdMZE4EE5UTQLiBFDaUlTDPBRoJ9HdAYIkIo06og3BNXtCzy7zA1aXk5x+tJARq63eAygAAAABJRU5ErkJggg==) 1x, url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOAAAACQAQMAAAArwfVjAAAABlBMVEVMaXFTU1OXUj8tAAAAAXRSTlMAQObYZgAAAYdJREFUeF7F1EFqwzAUBNARAmVj0FZe5QoBH6BX+dn4GlY2PYNzGx/A0CvkCIJuvIraKJKbgBvzf2g62weDGD7CYggpfFReis4J0ey9EGFIiEQQojFSlA9kSIiqd0KkFjKsewgRbStEN19mxUPTtmW9HQ/h6tyqNQ8NlSMZdzyE6qkoE0trVYGFm0n1WYeBhduzwbwBC7voS+vIxfeMjeaiLxsMMtQNwMPtuew+DjzcTHk8YMfDknEcIUOtf2lVfgVH3K4Xv5PRYAXRVMtItIJ3rfaCIVn9DsTH2NxisAVRex2Hh3hX+/mRUR08bAwPEYsI51ZxWH4Q0SpicQRXeyEaIug48FEdegARfMz/tADVsRciwTAxW308ehmC2gLraC+YCbV3QoTZexa+zegAEW5PhhgYfmbvJgcRqngGByOSXdFJcLk2JeDPEN0kxe1JhIt5FiFA+w+ItMELsUyPF2IaJ4aILqb4FbxPwhImwj6JauKgDUCYaxmYIsd4KXdMjIC9ItB5Bn4BNRwsG0XM2nwAAAAASUVORK5CYII=) 2x); width: 112px; } data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAACY4AAACCBAMAAAAZXNPFAAAAJFBMVEX////////a2tr/9/e5ubn39/dTU1P29vbv7+/+/v74+Pjw8PCvMVmIAAAAAXRSTlMAQObYZgAAC3pJREFUeAHs3cFx6soSxnGt7r5TcAqTAgF4Q3n7VkrBIZytQ3AWJ703HBn/yyOaUcMga9D33VO26OmWkQt+VegKPCiKoiiKoii/H7uaoVlectrf94VH+NACSacMpP0CCU68/MutNdJir+TwOn3/bxzH/503p61c+SqOXxloHFk9laYafSx+9+UvUy+Nv/DE6rJXjskxOSbH5NgKsfFqjo0Iy/n3fVXHOEJ7YIGk8RQsab5AwhP87ld1jMgxOSbH5NgzO/YNDaJNX8/asIpKU2hhYtqij1qex8p65FjnjJHj/YfNA3ho6pjZOJotO0J7ZAFJsOQxCylRqU0QCKrXyjJFUi5Gdr4XxyxnLGLWey8pe3fmGJtyTI69Hf58yDE59jjGiN152Dx2O3XMvML6jiVKUccCtjm4kaUz1ftxOBxeEagwZipRA6RpAdEIq3Ksea8cI3LsK3Ls7f09O/bn/V2OddArxwbS3rGqZJBjFwtmlQ4b6cgpCramY4lawDFMCb2qpNbglSVFaodzntSx8ULMeu4ldJB9OZYjx6oLcoxzYWxdODWGaIV3bOXQJ8fkWOCwN+iY4RCF0w272mEjHefF+UhYpZTSio4N5Lcco+6cH3tKx8we443Zo3rNljpG7x4dGwYe4XJMjn22dkyOybFj0LFhqPyKeCxXHbOc6EWG/NSqYwZEUwGPqh2OY4wEHKOSGjnmkggoSxQj1K6EppBk1Lh+7LJjWIRZ51BjlrNfQy79R1/g/JgcG8fljtG7O8e+b8ixBzkmx+SYHDu2dYyH7JM4Zg0cA6TbHaNeI1GO6f9XNnNMjrmXEskxOTYx9PMcF88MpOImNcexcmJfjsmxY5vz/Dyyq44FztmX3XXJrHTMqo7ZFcdstE04luq7qotV1Ai1q6EtfoWsHNtmb/A8vxzLkWNyTI617ZVjx3Pw7HbHfMDWdWxyB3LKAo75HSVbG3AssVJzDDQ24Bhl9/PH5tdJTDXggbliC8eoDWw85vPHdB2sHKNrj47JsbeP7Fj+Ksda9cqxI/m6dZdjQ8yxmkeEbhxzJx2DHMfoaOBYSmlwFsCnnNiZY4fX6Z8ck2MdOkb27Zgc+zwhlr92ETnWgWNH8n3zdsfkGNLMF1ICn8oE8gUcg0SXEerUCLVKnGF2W5Ps5NgWI8fk2MtL/rfQspe9OibH+DzYhpFjcoxvp6zpGPuqS1Z2+5MrOla8NQinLi6wXplAvpBjLG/bMT7vYmuRY3KMR+1LPTt2TI7xebCNI8fk2LhDx8Z7HUv4MXcq1R2rTwQcg8SNO3Y45+kdM2Jb7iVyLB45Jsf4GLEiTrG4Kp+6sx+Sp6bct0/qcmyDjo23OGbEbleMfZFqd3HrdxxzKXEWUnWiiWMYEnw3OLUlkgXfQc4C58fkmByTY3KsZ8c+5VjTXjlG9uPYYHLstxzj+jH0INQvmTPVyyk6Sd3Aer2+H8tZ9Gd4eut14hsmx+TYzhzj/ZVybI1eORY87LhiTsxu6Cb+S0eOzcpFf6RcXNWxlJ7NMd5f2adjckyOyTE5xvsrl1lBxilyTI7t0TGbF3KsUMoZYdFWdYwJmp7s/Fj3jpn9ePDZKfNTJVNHZ70581+A6xdj4dRG5Zgck2NyTI4FDjseI+z1ynn/5d0zx2xe4JeATP6IGSWyimN8nfKMjuFSk2sh4o7lytJ9cp+jjskxu5A7RntyTI7JMTkmx+SYUygcs8oIL7MZGVZ2DMbS9hyTY/NH5o8nR3e9OMaBE8rsGC59scoERjfmmByTY28fh9e3j5u8ys30Nzg/VrnOfx7u2KZskmNlcCxy2GQDZ/2NWxwuBRyjVnbMHStH7nAs3eIYjE1f2VV3jh1eT//JsX04RkbCT7x9VI7Jsd917O/hz+FTjrXolWMOZGPvjqESbJnv2HQQV0dwjJEbHSNhx1LOUHxYEOnu8y5QJXgtRCPHCGAuc2yijz9D+JUrD93Oevm11N8fzo6v7drHqDq6ScfkmBzj82DlWIteOQZkhM7YYbeXDCvj3VayZb5jXof5jg1D2DH0udmx4ZT+HTucI8f25Jjz824e3YZjckyO8QQJeNXw88dYorjwvQNTfSM2yTEn/Ts2mEEOBc8xZ2QkjRwbUivHhtT9+bGncMx/qpkVhvTUm8Ov65JhpWPLUjaaxUflmBzbyPVj2bG/H3JsjV45Fjjs9o4Rs0A/3ZBzb4FiA8eGdJdj6dsxeru9fqz7yDE5Jsd27NhnduxTjq3WK8fkGLUmjg3pDsfSaWFaprnX91c+jWNO7F+67MUxJ8PPIEQwZvFROSbH5Jgc251j9cNu7ljgJ5g53c0dMwfH2VuDEirNFzhR70+4jlFLfBlSTn9/h/cpHJNjckyOybFPOUbkWCByrGUBxwiiOPVzyobkkFhz7JSZlR04Rp7bsX576461kczsxlE5JsfkmBwjcqztQyL++YxG6P91xxILRZ2k6xMsLHWMiV4ck2NyTI7JMTkmx+RYHTIb5FitkDyu0jXGWGclObsKOTaVqpIVNULtai6Pkrpi+5DMrM9eUnGsgWRmjMoxOSbH5NgOHatDZhz2So613OsKjjmQpdkCn4BIkj9BEtWKY3RsxTE5ZtZrL/EVk2NyTI61ihyTY4NdzZLDlmND8rhiAV9IqkywkOqOMTGzZDuOUduJZGb99pKAYwGOjFiD0W4dk2NyTI7JsUDM1nKMvXbkWPHWIMLCVccqLzap1h2rvoxzdCPUrsQZJOu+qpRjckyOyTE5JsfkmBzzKYkvXJYvybH+JLOcnnuJo1hYMsuZV1qMyjE5Jsfk2A4c8w97s44RO+VRhThX8QV4CzhGgGOhZGWNOC1VxUhHiskxOSbH5Jgck2NyrKus4BjVxDIt1x3LibyyjDgWeVVJbR+SWU7vvWShYnjkvyO8SLtROSbH5Jgc24FjzmE3jllVMTnGOh1MzIMedcncYoOrXanJsZ05ZqdM34KOMbopx+SYHJNjckyOyTE2U/InyFJqLkrV5lUltScOJ6LNeIK07J22aPd7zdreBySbvi97IrN/MIr/WeP6qByTY3JMju3IMeewm2fJPuXYkBLL/sSSqy+W1mLde7riQo6VQS1O0fs/o36wjMoxOSbH5NiOHRu/Uh42t4kcW8mxIe5Yzq84Ru3Jw3OVEyTNe8+pQmDW9j7g12lrmejsP+gYQzlyTI7JMTkmx2qH3UnkmLJC5BiZO1a542Q+tHhUjskxRY7JMUWOKTwt2GrVezwuvxentLwP6LXcMTMkDTv2s1GOyTFFjsmx6mErcqweOSbHSNgxIsfkmCLH5NiYI8fkmLLoxAtbTXsDaXkfIICtNvcgOCTH5Jgix+RY4LDlWGq+EHBMlMkxOSbH5Jgix3bs2LhnxIYEJQlhIgukXIg4xoSyduwrbDXuDaT1fYiHvTYYkmNyTJFjcmzMuX7YShp/fNR0umMB4FhIjmPORP+RY3JMjskxRY7JMSUQKDknvuCTeC79dCzh2HxCURRFjimKopeY8QUHuPPC+dsp54Fp05tQlP+3ax9XCsRAEEB1UkIkxKnyz2C993pPrWXE/0c8TXXhBvTYFQNO9WecfrpzAD0GAAAA5MG5MW+AA4MF9JgeA5J2p9u3eQMcGCygx/QYkKQ1+zZ1gAODBfSYHgOS9qxn3sIZoMGCHtNjFbIlaG/0fHC2BOMD/H2w9fTYLtBjegxI0nzt/EeAHgPovqwAemwDJKm+/ax/qBX23pPckav15Ere6smbXFWTq/qh5PPtt6mSoUfwSeofyieZuApJVq1fPj3HJHIlVytztUne5E2PyZVckeLbKJDUz0B+5Equ5E3eDkWu5Cqjs8md2s/RSSY+uWSH9U6OtMRyNUCuNs2bvOkxuZKrz6lI1v1yG8fVDb4+ufCsRq5KyJUekzc9tgG5AgDggt0CZbA9DpBeWG4AAAAASUVORK5CYII= /vmfs/volumes/5b7eb5b4-77b9084b-4207-50465da1f8a3/win2016-4.ad.blog.travisrunyard.us/win2016-4.ad.blog.travisrunyard.us_1.vmdk find . -type f -name "baz" -exec sed -i 's/foo/bar/g' {} + google.com, pub-6232977814220761, DIRECT, f08c47fec0942fa0 Px1u3Z0MS configure arguments: --with-cc-opt='-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now -fPIC' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-compat --with-debug --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-threads --with-http_addition_module --with-http_flv_module --with-http_geoip_module=dynamic --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_mp4_module --with-http_perl_module=dynamic --with-http_random_index_module --with-http_secure_link_module --with-http_sub_module --with-http_xslt_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-stream=dynamic --with-stream_ssl_module --with-stream_ssl_preread_module --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-headers-more-filter --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-auth-pam --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-cache-purge --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-dav-ext --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-ndk --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-echo --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-fancyindex --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/nchan --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-lua --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/rtmp --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-uploadprogress --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-upstream-fair --add-dynamic-module=/build/nginx-u35_og/nginx-1.14.2/debian/modules/http-subs-filter curl --data '' "http://emby.ad.blog.travisrunyard.us:8096/emby/Items/f137a2dd21bbc1b99aa5c0f6bf02a805/Refresh?Recursive=true&ImageRefreshMode=Default&MetadataRefreshMode=Default&ReplaceAllImages=false&ReplaceAllMetadata=false&api_key=0EB5FB0D3B9545F48EE8C4400B9AF1C1" find /mnt/pool0/p0ds0smb/video- -depth -type d -iname "sample" -print0 | xargs -0 /bin/rm -rfv 1>/dev/null ; find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f ! \( -iname ".mp4" -o -iname ".avi" -o -iname ".srt" -o -iname ".mkv" -o -iname ".sub" -o -iname ".jpg" -o -iname ".jpeg" -o -iname ".png" -o -iname ".sfv" -o -iname ".mpg" -o -iname ".mpeg" -o -iname ".nfo" -o -iname ".idx" -o -iname ".ignore" -o -iname "." -o -ipath ".~tmp~" -o -ipath "episode" -o -ipath 'sub' -o -ipath "video_ts" \) -print0 | xargs -0 /bin/rm -rfv 1>/dev/null ; find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f \( -iname "YIFY.jpg" -o -iname "YTS.jpg" \) -print0 | xargs -0 /bin/rm -rfv sudo youtube-dl -f 'best' --merge-output mp4 "" for snapshot in $(zfs list -H -t snapshot -r pool0 | cut -f 1 | egrep '//@auto-|/@auto-') do zfs destroy $snapshot echo Destroyed $snapshot done Movies: 636 (1.237 TiB), TV-Shows: 53, 248 seasons, 3709 episodes (1.067 TiB) and counting... for i in .jpeg; do Shortname=${i:0:5} ;Lowercase=$(echo $Shortname | tr '[A-Z]' '[a-z]') ; mv "$i" "$Lowercase.jpeg" ;done #!/usr/bin/env bash /usr/bin/find /mnt/pool0/p0ds1nfs/torrent/torrent-/ ! -path '/torrent-hold/' ! -path '/torrent-incomplete/' -mtime +3d ! -name '.part' -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null ; /usr/bin/find /mnt/pool0/p0ds1nfs/torrent/torrent-/ -depth ! -path '/torrent-hold/' ! -path '/torrent-incomplete/' -type d -empty -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null find /mnt/pool0/p0ds0smb/video- -depth -type d -iname "sample" -print0 | xargs -0 /bin/rm -rfv 1>/dev/null ; find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f ! \( -iname ".mp4" -o -iname ".avi" -o -iname ".srt" -o -iname ".mkv" -o -iname ".sub" -o -iname ".jpg" -o -iname ".jpeg" -o -iname ".png" -o -iname ".sfv" -o -iname ".mpg" -o -iname ".mpeg" -o -iname ".nfo" -o -iname ".idx" -o -iname ".ignore" -o -iname "." -o -iname ".ac3" -o -ipath ".~tmp~" -o -ipath "episode" -o -ipath 'sub' -o -ipath "video_ts" \) -print0 | xargs -0 /bin/rm -rfv 1>/dev/null ; find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f \( -iname "YIFY.jpg" -o -iname "YTS.jpg" \) -print0 | xargs -0 /bin/rm -rfv find ./ -mindepth 1 -maxdepth 1 ! -empty -type d|echo 'Directories: '$(wc -l) && echo;du -Lsb . | awk ' function hr(bytes) { hum[10244]="TiB"; hum[10243]="GiB"; hum[10242]="MiB"; hum[1024]="kiB"; for (x = 10244; x >= 1024; x /= 1024) { if (bytes >= x) { return sprintf("%8.3f %s", bytes/x, hum[x]); } } return sprintf("%4d B", bytes); } { print hr($1) } '; find ./ -mindepth 1 -maxdepth 1 ! -empty -type d|echo 'Directories: '$(wc -l) && du -Lsb . | awk ' function hr(bytes) { hum[10244]="TiB"; hum[10243]="GiB"; hum[10242]="MiB"; hum[1024]="kiB"; for (x = 10244; x >= 1024; x /= 1024) { if (bytes >= x) { return sprintf("%8.3f %s", bytes/x, hum[x]); } } return sprintf("%4d B", bytes); } { print hr($1) } '|cut -d ' ' -f 4,5; grep -ERil 'limit(=|:)[16\-30]' /usr/local/lib/emby-server/system/dashboard-ui/ /mnt/pool0/iocage/jails/emby-server/root/usr/local/lib/emby-server/system/dashboard-ui/bower_components/emby-webcomponents/homesections/homesections.js The POSIX standard only defines three distinct timestamps to be stored for each file: the time of last data access, the time of last data modification, and the time the file status last changed. http://www.wael.name/wael.list.p2p.gz find . -type f -regextype sed -regex ".[mkv|mp4|mpg|mpeg|avi]"|wc -l find . -mindepth 2 -maxdepth 2 ! -empty -type d -iname 'season' | wc -l find ./ -mindepth 1 -maxdepth 1 ! -empty -type d|echo 'Directories: '$(wc -l) && du -Lsb /usr/local/jellyfin docker run -d \ --volume /usr/local/jellyfin/config:/config \ --volume /usr/local/jellyfin/cache:/cache \ --volume /mnt/pool0/p0ds0smb:/media \ --net=host \ --name jellyfin \ --rm \ jellyfin/jellyfin rename -v 's/(\ )?//g' rename -v 's/(\ )?[\(|\[]?(1080p|720p)[\]|\)]?//g' rename -v 's/(\ )?[\(|\[]?(1080p|720p|BluRay|YTS\..{2}|x264|x265|hevc|webrip|brrip)[\]|\)]?//gi' rename -v 's/(\ )?[\(|\[]?(1080p|720p|BluRay|YTS\..{2}|x264|x265|hevc|webrip|brrip|xvid|dvdrip|dvdscr|dvd)[\]|\)]?//gi' rename -v 's/(\ )?[\(|\[]?(1080p|720p|BluRay|YTS\..{2}|x264|x265|h264|h265|h\.264|hevc|webrip|brrip|xvid|dvdrip|dvdscr|dvd)[\]|\)]?//gi' mmv -v "[0-9][0-9][0-9].DVDrip.subs.mkv" "mystery.science.theater.3000.S#1#2E#3#4#5#6#l7.mkv" jellyfin-web/scripts/librarymenu.js 819 document.title = "TravisFlix"; 843 document.title = title || "TravisFlix"; for file in ls .tlf .flf ; do toilet --filter metal -f $(echo $file | sed 's/\.(tlf|flf)//') 'TRAVISFLIX' && echo $file;done find . -depth -exec rename 's!([^/]\Z)!uc($1)!e' {} + find <dir>-depth -type d -exec rename -n 's!/([^/]/?)$!\U/$1!' {} +</dir>find . -depth -type f -name '.mkv' -o -name '.mp4' -exec rename -n 's/WEB\-DL\.//g' '{}' \; -[MULVAcoded] # WORKS find . -iname "mkv" -exec rename -v 's/\[MULVAcoded\]//g' '{}' \; # REPLACE " " AND " - " WITH PERIODS rename -v 's/([\ |\ \-\ ]+)/\./g' rename -v 's/([\ \-])/./g' -printf '%f\n' find . -maxdepth 1 -type d -printf '%f\n' find . -mount -depth -mindepth 2 -maxdepth 2 -type d ! -empty \ \( -name 'sub' -name 'Sub' -name 'SUB' -name 'Subs' -name 'SUBS' -name 'subtitle' -name 'Subtitle' -name 'SUBTITLE' -name 'Subtitles' -name 'SUBTITLES' \) \ -exec rename -n 's/(.)\/([^\/])/$1\/\L$2/' {} \; find . -mount -mindepth 1 -maxdepth 3 -type d ! -empty \( -name 'sub' -o -name 'Sub' -o -name 'SUB' -o -name 'Subs' -o -name 'SUBS' -o -name 'subtitle' -o -name 'Subtitle' -o -name 'SUBTITLE' -o -name 'Subtitles' -o -name 'SUBTITLES' \) -exec rename -f -n 's/(.)\/([^\/])/$1\/subs/' {} \; find . -mount -depth -mindepth 1 -maxdepth 3 -type d ! -empty \ \( -name 'sub' -o -name 'Sub' -o -name 'SUB' -o -name 'Subs' -o -name 'SUBS' -o -name 'subtitle' \ -o -name 'Subtitle' -o -name 'SUBTITLE' -o -name 'Subtitles' -o -name 'SUBTITLES' \) \ -exec rename -n -f -v 's/(.)\/([^\/])/$1\/subs/' {} \; find . -name "fgh" -type f -print0 | xargs -0 -I {} sh -c 'mv "{}" "$(dirname "{}")/echo $(basename "{}") | sed 's/^fgh/jkl/g'"' find . -maxdepth 1 -type d -print0 | xargs -0 -I {} sh -c 'echo $(basename "{}")' ls | sed -n 's/./mv "&" $(tr "[A-Z]" "[a-z]" <<< "&")/p' | bash ls|sed 's/\(.\)/mv "\1" "\U\1"/' | sh find ~/mnt/pool0/p0ds0smb/video-movies -maxdepth 1 -type d -print0 | xargs -0 -I {} sh -c 'echo $(basename "{}")' | sort | sed -n '1!p' > movies.txt find /mnt/pool0/p0ds0smb/video-movies -mindepth 1 -maxdepth 1 -type d -printf '%f\n' | sort > /mnt/pool0/p0ds0smb/video-movies/movies.txt find /mnt/pool0/p0ds0smb/video-shows -mindepth 1 -maxdepth 1 -type d -printf '%f\n' | sort > /mnt/pool0/p0ds0smb/video-shows/shows.txt find /mnt/pool0/p0ds0smb/video-standup -mindepth 1 -maxdepth 1 -type d -printf '%f\n' | sort > /mnt/pool0/p0ds0smb/video-standup/standup.txt find '/mnt/pool0/p0ds0smb/video-movies' -type f -exec mv --backup=numbered -t /dst/dir {} + find '/mnt/pool0/p0ds0smb/video-movies/Avengers Infinity War (2018)' -depth -mindepth 2 -maxdepth 2 -type f -ipath '/sub' \( -iname '.srt' -o -iname '.sub' -o -iname '.idx' \) \ -exec echo {} dirname {} \; find /mnt/pool0/p0ds0smb/video-movies -depth -mindepth 3 -maxdepth 3 -type f -ipath '/sub' \( -iname '.srt' -o -iname '.sub' -o -iname '.idx' \) -execdir mv "{}" ./.. \; find /mnt/pool0/p0ds0smb/video-movies -depth -mindepth 3 -maxdepth 3 -type f -ipath '/sub' \( -iname '.srt' -o -iname '.sub' -o -iname '.idx' \) -execdir mv -v "{}" ./.. \; find /mnt/pool0/p0ds0smb/video-movies -depth -mindepth 3 -maxdepth 4 -type f -ipath '/sub' \( -iname '.srt' -o -iname '.sub' -o -iname '.idx' \) -execdir mv -v "{}" ./.. \; find /mnt/pool0/p0ds0smb/video-movies -mindepth 3 -maxdepth 3 -type d -iname 'sub' -empty find ~/mnt/pool0/p0ds0smb/video-shows -mindepth 2 -maxdepth 3 -type d -iname 'sub' -empty -exec mv --backup=numbered -t /dst/dir {} + /mnt/path/to/video-movies ├── Movie │ └── Subs find /mnt/pool0/p0ds0smb/video-movies -depth -mindepth 3 -maxdepth 4 -type f \ -ipath '/sub' \( -iname '.srt' -o -iname '.sub' -o -iname '.idx' \) \ -execdir mv -v "{}" ./.. \; find ~/mnt/pool0/p0ds0smb/video-shows -depth -mindepth 2 -maxdepth 5 -type f \ -ipath '/sub' \( -iname '.srt' -o -iname '.sub' -o -iname '.idx' \) \ -execdir mv -v "{}" ./.. \; find ~/mnt/pool0/p0ds0smb/video-standup -depth -mindepth 2 -maxdepth 5 -type f \ -ipath '/sub' \( -iname '.srt' -o -iname '.sub' -o -iname '.idx' \) \ -execdir mv -v "{}" ./.. \; /mnt/path/to/video-movies |-- Movie | -- subtitles |-- Movie | |-- subs | | -- srt /mnt/path/to/video-movies ├── Movie │ └── subtitles │ └── srt find . -depth -mindepth 3 -maxdepth 4 -type f \ -ipath '/sub' \( -iname '.srt' -o -iname '.sub' -o -iname '.idx' \) \ -execdir mv -v "{}" ../. \; So old string " github.com/go-redis/redis/v7/xxxx" New string is: " github.com/go-redis/redis/xxxx" the xxxx can be different things Just need to get rid of the "v7/" from the old string sed -i 's/github\.com\/go\-redis\/redis\/v7\//github\.com\/go\-redis\/redis\//' sed -i 's/github\.com\/go-redis\/redis\/v7/github\.com\/go-redis\/redis/' ./bench_test.go for i in 'ls .txt'; do cat $i | echo -i$($i).bak && mv $i.bak $i; done for i in ls .txt; do cat $i | sed -s -- 's/github.com\/go-redis\/redis\/v7/github.com\/go-redis\/redis/g'> $i.bak && mv $i.bak $i; done for i in ls .txt; do cat $i | sed 's/github.com\/go-redis\/redis\/v7/github.com\/go-redis\/redis/g'> $i.bak && sudo mv $i.bak $i; done find . -mindepth 2 -maxdepth 2 -type f -regextype egrep -regex ".\.(mkv|mp4|mpg|mpeg|avi)" -printf '%f\n' overflow:hidden; white-space:nowrap; text-overflow:ellipsis; for i in .flv; do ffmpeg -i "$i" -movflags faststart -c:a aac -c:v libx264 -b:a 128k "${i%.flv}.mp4"; done <ins class="adsbygoogle" style="display: inline-block; min-width: 400px; max-width: 1200px; width: 100%; height: 90px;" data-ad-client="ca-pub-6232977814220761" data-ad-slot="1737936138"></ins> <script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <script>(adsbygoogle = window.adsbygoogle || []).push({});</script> dd bs=4M if=~/Downloads/retropie-4.5.1-rpi2_rpi3.img of=/dev/sdb conv=fsync find /mnt/pool0/p0ds0smb/video- -depth -type d -iname "sample" -print0 | xargs -0 /bin/rm -rfv 1>/dev/null ; find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f ! \( -iname ".mp4" -o -iname ".avi" -o -iname ".srt" -o -iname ".mkv" -o -iname ".sub" -o -iname ".jpg" -o -iname ".jpeg" -o -iname ".png" -o -iname ".sfv" -o -iname ".mpg" -o -iname ".mpeg" -o -iname ".nfo" -o -iname ".idx" -o -iname ".ignore" -o -iname "." -o -iname ".ac3" -o -ipath ".~tmp~" -o -ipath "episode" -o -ipath 'sub' -o -ipath "video_ts" \) -print0 | xargs -0 /bin/rm -rfv 1>/dev/null ; find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f \( -iname "YIFY.jpg" -o -iname "YTS.jpg" \) -print0 | xargs -0 /bin/rm -rfv find /mnt/pool0/p0ds0smb/video- -depth -type d -iname "sample" -print0 | xargs -0 /bin/rm -rfv 1>/dev/null ; find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f ! \( -iname ".mp4" -o -iname ".avi" -o -iname ".srt" -o -iname ".mkv" -o -iname ".sub" -o -iname ".jpg" -o -iname ".jpeg" -o -iname ".png" -o -iname ".sfv" -o -iname ".mpg" -o -iname ".mpeg" -o -iname ".nfo" -o -iname ".idx" -o -iname ".ignore" -o -iname "." -o -iname ".ac3" -o -ipath ".~tmp~" -o -ipath "episode" -o -ipath 'sub' -o -ipath "video_ts" \) -print0 | xargs -0 /bin/rm -rfv 1>/dev/null ; find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f \( -iname "YIFY.jpg" -o -iname "YTS.jpg" \) -print0 | xargs -0 /bin/rm -rfv Non recursive, files in this directory only: sed -i -- 's/foo/bar/g' perl -i -pe 's/foo/bar/g' ./ (the perl one will fail for file names ending in | or space)). Recursive, regular files (including hidden ones) in this and all subdirectories find . -type f -exec sed -i 's/foo/bar/g' {} + If you are using zsh: sed -i -- 's/foo/bar/g' /(D.) (may fail if the list is too big, see zargs to work around). Bash can't check directly for regular files, a loop is needed (braces avoid setting the options globally): ( shopt -s globstar dotglob; for file in ; do if [[ -f $file ]] && [[ -w $file ]]; then sed -i -- 's/foo/bar/g' "$file" fi done ) The files are selected when they are actual files (-f) and they are writable (-w). 2. Replace only if the file name matches another string / has a specific extension / is of a certain type etc: Non-recursive, files in this directory only: sed -i -- 's/foo/bar/g' baz ## all files whose name contains baz sed -i -- 's/foo/bar/g' .baz ## files ending in .baz Recursive, regular files in this and all subdirectories find . -type f -name "baz" -exec sed -i 's/foo/bar/g' {} + If you are using bash (braces avoid setting the options globally): ( shopt -s globstar dotglob sed -i -- 's/foo/bar/g' baz sed -i -- 's/foo/bar/g' .baz ) If you are using zsh: sed -i -- 's/foo/bar/g' /baz(D.) sed -i -- 's/foo/bar/g' /.baz(D.) The -- serves to tell sed that no more flags will be given in the command line. This is useful to protect against file names starting with -. If a file is of a certain type, for example, executable (see man find for more options): find . -type f -executable -exec sed -i 's/foo/bar/g' {} + zsh: sed -i -- 's/foo/bar/g' /(D) 3. Replace only if the string is found in a certain context Replace foo with bar only if there is a baz later on the same line: sed -i 's/foo\(.baz\)/bar\1/' file In sed, using \( \) saves whatever is in the parentheses and you can then access it with \1. There are many variations of this theme, to learn more about such regular expressions, see here. Replace foo with bar only if foo is found on the 3d column (field) of the input file (assuming whitespace-separated fields): gawk -i inplace '{gsub(/foo/,"baz",$3); print}' file (needs gawk 4.1.0 or newer). For a different field just use $N where N is the number of the field of interest. For a different field separator (: in this example) use: gawk -i inplace -F':' '{gsub(/foo/,"baz",$3);print}' file Another solution using perl: perl -i -ane '$F[2]=~s/foo/baz/g; $" = " "; print "@F\n"' foo NOTE: both the awk and perl solutions will affect spacing in the file (remove the leading and trailing blanks, and convert sequences of blanks to one space character in those lines that match). For a different field, use $F[N-1] where N is the field number you want and for a different field separator use (the $"=":" sets the output field separator to :): perl -i -F':' -ane '$F[2]=~s/foo/baz/g; $"=":";print "@F"' foo Replace foo with bar only on the 4th line: sed -i '4s/foo/bar/g' file gawk -i inplace 'NR==4{gsub(/foo/,"baz")};1' file perl -i -pe 's/foo/bar/g if $.==4' file 4. Multiple replace operations: replace with different strings You can combine sed commands: sed -i 's/foo/bar/g; s/baz/zab/g; s/Alice/Joan/g' file Be aware that order matters (sed 's/foo/bar/g; s/bar/baz/g' will substitute foo with baz). or Perl commands perl -i -pe 's/foo/bar/g; s/baz/zab/g; s/Alice/Joan/g' file If you have a large number of patterns, it is easier to save your patterns and their replacements in a sed script file: #! /usr/bin/sed -f s/foo/bar/g s/baz/zab/g Or, if you have too many pattern pairs for the above to be feasible, you can read pattern pairs from a file (two space separated patterns, $pattern and $replacement, per line): while read -r pattern replacement; do sed -i "s/$pattern/$replacement/" file done < patterns.txt That will be quite slow for long lists of patterns and large data files so you might want to read the patterns and create a sed script from them instead. The following assumes a delimiter separates a list of MATCHREPLACE pairs occurring one-per-line in the file patterns.txt : sed 's| \([^ ]\) \([^ ]\).|s/\1/\2/g|' outfile The above format is largely arbitrary and, for example, doesn't allow for a in either of MATCH or REPLACE. The method is very general though: basically, if you can create an output stream which looks like a sed script, then you can source that stream as a sed script by specifying sed's script file as -stdin. You can combine and concatenate multiple scripts in similar fashion: SOME_PIPELINE | sed -e'#some expression script' \ -f./script_file -f- \ -e'#more inline expressions' \ ./actual_edit_file >./outfile A POSIX sed will concatenate all scripts into one in the order they appear on the command-line. None of these need end in a \newline. grep can work the same way: sed -e'#generate a pattern list' grep -f- ./grepped_file When working with fixed-strings as patterns, it is good practice to escape regular expression metacharacters. You can do this rather easily: sed 's/[]$&^\./[]/\\&/g s| \([^ ]\) \([^ ]\).|s/\1/\2/g| ' outfile 5. Multiple replace operations: replace multiple patterns with the same string Replace any of foo, bar or baz with foobar sed -Ei 's/foo|bar|baz/foobar/g' file or perl -i -pe 's/foo|bar|baz/foobar/g' file share edit find . -newermt "Sep 28 18:45" -exec rsync {} need_to_copy_to_s3 \; find . -type f -newermt "2019-09-28 18:45:00" -exec mv '{}' $need_to_copy_to_s3 \; screen -dmS rclone-edu-01 bash -c 'rclone sync --bwlimit 4M --progress --checksum --no-update-modtime --transfers 4 --checkers 4 --tpslimit 6 --update --filter-from /root/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --log-level NOTICE --low-level-retries 30 /mnt/pool0/p0ds0smb/video-movies rclone-edu-01:/backup-gdrive-rclone01/p0ds0smb/video-movie 2>&1 |& tee /root/.config/rclone/rclone-edu-01.log' screen -dmS rclone-edu-02 bash -c 'rclone sync --bwlimit 1M --progress --checksum --no-update-modtime --transfers 4 --checkers 8 --tpslimit 10 --update --filter-from /root/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --log-level NOTICE --low-level-retries 30 /mnt/pool0/p0ds0smb/video-shows rclone-edu-01:/backup-gdrive-rclone01/p0ds0smb/video-shows 2>&1 | tee /root/.config/rclone/rclone-edu-01.log' screen -dmS rclone-edu-03 bash -c 'rclone sync --bwlimit 6M --progress --checksum --no-update-modtime --transfers 10 --checkers 8 --tpslimit 10 --update --filter-from /root/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --log-level NOTICE --low-level-retries 30 --log-file /root/.config/rclone/upload.log /mnt/pool0/p0ds0smb rclone-edu-01:/rclone-edu-01/p0ds0smb 2>&1 | tee /root/.config/rclone/rclone-edu-01.log' ### final version: ### screen -dmS rclone-edu-01 bash -c 'rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 10 --checkers 10 --tpslimit 10 --update --filter-from /root/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=true --log-level INFO --low-level-retries 30 --log-file /root/.config/rclone/upload.log /mnt/pool0/p0ds0smb rclone-edu-01:/rclone-edu-01/p0ds0smb 2>&1 | tee /root/.config/rclone/rclone-edu-01.log' ### one off: ### screen -dmS rclone-edu-02 bash -c 'rclone copy --bwlimit 2M --progress --low-level-retries 30 "/mnt/pool0/p0ds0smb/video-memories" "rclone-edu-01:/rclone-edu-01/p0ds0smb/video-memories" 2>&1 | tee /root/.config/rclone/rclone-edu-02.log' Matches: from:(-jobs@dice.com OR -employer@msg.monster.com OR -@ziprecruiter.com OR -icims.com OR -hhmazaheri@gmail.com OR -@mbg.com OR -@salesforce.com OR -@zendesk.com) ("resume" OR "career" OR "jobs" OR "job description" OR "systems administrator" OR "system administrator" OR "engineer" OR "interview" OR "agency" OR "recruiter" OR "recruiting") -{"huntington" OR "newport" OR "irvine" OR "tustin" OR "long beach" OR "los angeles" OR "LA" OR "lake forest" OR "aliso viejo" OR "santa ana" OR "costa mesa" OR "fountain valley" OR "anaheim" OR "orange"} -in:chats Do this: Skip Inbox, Mark as read, Send template "Recruiter_Location_Radius" PP-D-41211606 42586970 /usr/bin/find /mnt/pool0/p0ds1nfs/torrent/torrent-/ ! -path '/torrent-hold/' ! -path '/torrent-incomplete/' -mtime +3d ! -name '.part' ! -name '.!qB' -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null ; /usr/bin/find /mnt/pool0/p0ds1nfs/torrent/torrent-/ -depth ! -path '/torrent-hold/' ! -path '/torrent-incomplete/' -type d -empty -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null screen -dmS rclone-edu-02 bash -c 'rclone sync --bwlimit 4M --progress --checksum --no-update-modtime --transfers 13 --checkers 10 --tpslimit 10 --update --filter-from /root/.config/rclone/filter-file-novideo.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=false --log-level INFO --low-level-retries 30 --delete-during --log-file /root/.config/rclone/upload2.log /mnt/pool0/p0ds0smb rclone-edu-01:/rclone-edu-01/p0ds0smb 2>&1 | tee -a /root/.config/rclone/rclone-edu-02.log' docker run -d --restart="always" -p 8080:80 -v /docker/privatebin:/srv/data privatebin/nginx-fpm-alpine find . -type d -exec chmod 775 {} \; && find . -type f -exec chmod 664 {} \; docker create \ --name=unifi-controller \ -e PUID=1000 \ -e PGID=1000 \ -e MEM_LIMIT=1024M #optional \ -p 3478:3478/udp \ -p 10001:10001/udp \ -p 8080:8080 \ -p 8081:8081 \ -p 8443:8443 \ -p 8843:8843 \ -p 8880:8880 \ -p 6789:6789 \ # -v path to /var/lib/unifi:/config \ -v /docker/unifi-controller/config:/config \ --restart unless-stopped \ linuxserver/unifi-controller --- version: "2" services: unifi-controller: image: linuxserver/unifi-controller container_name: unifi-controller environment: - PUID=1000 - PGID=1000 - MEM_LIMIT=1024M #optional volumes: - path to /docker/unifi-controller/config:/config ports: - 3478:3478/udp - 10001:10001/udp - 8080:8080 - 8081:8081 - 8443:8443 - 8843:8843 - 8880:8880 - 6789:6789 restart: unless-stopped autobackup_5.11.46_20191012_1120_1570879200382.unf lugbpaqb 4myRH5pr00 [root@transmission /usr/local/etc/openvpn]# cat openvpn.conf ############################################################################### # Specify the type of the layer of the VPN connection. # # To connect to the VPN Server as a "Remote-Access VPN Client PC", # specify 'dev tun'. (Layer-3 IP Routing Mode) dev tun ############################################################################### # Specify the underlying protocol beyond the Internet. # Note that this setting must be correspond with the listening setting on # the VPN Server. # # Specify either 'proto tcp' or 'proto udp'. proto udp ############################################################################### # The destination hostname / IP address, and port number of # the target VPN Server. # # You have to specify as 'remote '. You can also # specify the IP address instead of the hostname. #remote ca.proxy.sh 1194 #remote pa.proxy.sh 1194 #remote se.proxy.sh 1194 #remote ch.proxy.sh 1194 #remote us.proxy.sh 1443 #remote-random #remote us.proxy.sh 843 remote 107.181.170.56 1443 ############################################################################### # OpenVPN 1.0 Sample Configuration File # for Proxy.sh OpenVPN Access # # Note that to use OpenVPN 2.0, you have to put the certification file of # the destination VPN Server on the OpenVPN Client computer when you use this # config file. Please refer the below descriptions carefully. ############################################################################### # Other parameters necessary to connect to the VPN Server. # # It is not recommended to modify it unless you have a particular need. client auth-user-pass /usr/local/etc/openvpn/openvpn.auth remote-cert-tls server resolv-retry infinite nobind verb 3 #reneg-sec 0 route-method exe route-delay 2 comp-lzo #log /var/log/openvpn.log ############################################################################### # The encryption and authentication algorithm. # # When you specify an unsupported algorithm, the error will occur. cipher AES-256-CBC auth SHA512 ############################################################################### # The certificate file of the destination VPN Server. # # The CA certificate file is embedded in the inline format. #ca proxysh.crt -----BEGIN CERTIFICATE----- <redacted> -----END CERTIFICATE----- docker run --name postgres -v /my/own/datadir:/var/lib/postgresql/data -d postgres:tag # Use postgres/example user/password credentials version: '3.1' services: db: image: postgres restart: always environment: POSTGRES_PASSWORD: example adminer: image: adminer restart: always ports: - 8080:8080 https://nextcloud.blog.travisrunyard.us/ 'trusted_domains' => array ( 'nextcloud.blog.travisrunyard.us', 'cloud.blog.travisrunyard.us', 'docker3', 'docker3.ad.blog.travisrunyard.us', ), (IP redacted) - - [13/Oct/2019:13:30:30 -0700] "GET /nextcloud HTTP/1.1" 302 5 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/77.0.3865.90 Chrome/77.0.3865.90 Safari/537.36" "(IP redacted)" "nextcloud.blog.travisrunyard.us" sn="nextcloud.blog.travisrunyard.us" rt=0.025 ua="10.10.10.28:443" us="302" ut="0.024" ul="0" cs=- (IP redacted) - - [13/Oct/2019:13:30:30 -0700] "GET /login HTTP/1.1" 302 0 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/77.0.3865.90 Chrome/77.0.3865.90 Safari/537.36" "(IP redacted)" "nextcloud.blog.travisrunyard.us" sn="nextcloud.blog.travisrunyard.us" rt=0.091 ua="10.10.10.28:443" us="302" ut="0.092" ul="0" cs=- (IP redacted) - - [13/Oct/2019:13:30:30 -0700] "GET /login HTTP/1.1" 200 3351 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/77.0.3865.90 Chrome/77.0.3865.90 Safari/537.36" "(IP redacted)" "nextcloud.blog.travisrunyard.us" sn="nextcloud.blog.travisrunyard.us" rt=0.031 ua="10.10.10.28:443" us="200" ut="0.028" ul="10921" cs=- (IP redacted) - - [13/Oct/2019:13:30:30 -0700] "GET /apps/theming/styles?v=0 HTTP/1.1" 200 957 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/77.0.3865.90 Chrome/77.0.3865.90 Safari/537.36" "(IP redacted)" "nextcloud.blog.travisrunyard.us" sn="nextcloud.blog.travisrunyard.us" rt=0.020 ua="10.10.10.28:443" us="200" ut="0.020" ul="957" cs=- (IP redacted) - - [13/Oct/2019:13:30:30 -0700] "GET /svg/core/logo/logo?color=fff&v=1 HTTP/1.1" 200 321 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/77.0.3865.90 Chrome/77.0.3865.90 Safari/537.36" "(IP redacted)" "nextcloud.blog.travisrunyard.us" sn="nextcloud.blog.travisrunyard.us" rt=0.021 ua="10.10.10.28:443" us="200" ut="0.020" ul="321" cs=- (IP redacted) - - [13/Oct/2019:13:30:32 -0700] "GET /login HTTP/1.1" 200 3348 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/77.0.3865.90 Chrome/77.0.3865.90 Safari/537.36" "(IP redacted)" "nextcloud.blog.travisrunyard.us" sn="nextcloud.blog.travisrunyard.us" rt=0.029 ua="10.10.10.28:443" us="200" ut="0.032" ul="10921" cs=- (IP redacted) - - [13/Oct/2019:13:30:33 -0700] "GET /apps/theming/styles?v=0 HTTP/1.1" 200 957 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/77.0.3865.90 Chrome/77.0.3865.90 Safari/537.36" "(IP redacted)" "nextcloud.blog.travisrunyard.us" sn="nextcloud.blog.travisrunyard.us" rt=0.018 ua="10.10.10.28:443" us="200" ut="0.016" ul="957" cs=- (IP redacted) - - [13/Oct/2019:13:30:33 -0700] "GET /svg/core/logo/logo?color=fff&v=1 HTTP/1.1" 200 321 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/77.0.3865.90 Chrome/77.0.3865.90 Safari/537.36" "(IP redacted)" "nextcloud.blog.travisrunyard.us" sn="nextcloud.blog.travisrunyard.us" rt=0.020 ua="10.10.10.28:443" us="200" ut="0.020" ul="321" cs=- (IP redacted) - - [13/Oct/2019:13:30:36 -0700] "GET /login HTTP/1.1" 200 3352 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/77.0.3865.90 Chrome/77.0.3865.90 Safari/537.36" "(IP redacted)" "nextcloud.blog.travisrunyard.us" sn="nextcloud.blog.travisrunyard.us" rt=0.033 ua="10.10.10.28:443" us="200" ut="0.032" ul="10921" cs=- (IP redacted) - - [13/Oct/2019:13:30:36 -0700] "GET /apps/theming/styles?v=0 HTTP/1.1" 200 957 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/77.0.3865.90 Chrome/77.0.3865.90 Safari/537.36" "(IP redacted)" "nextcloud.blog.travisrunyard.us" sn="nextcloud.blog.travisrunyard.us" rt=0.020 ua="10.10.10.28:443" us="200" ut="0.016" ul="957" cs=- lhifholdomxovqyc -Dsubsonic.home=/var/subsonic -Dsubsonic.host=0.0.0.0 -Dsubsonic.port=4040 sysctl vm.swappiness=10 /etc/sysctl.conf echo 'vm.swappiness=10' | tee -a /etc/sysctl.conf echo 'vm.swappiness=10' >> /etc/sysctl.conf echo 'vm.swappiness=70' | tee -a /etc/sysctl.conf #C4C5B5 #272822 /usr/bin/find /mnt/pool0/p0ds1nfs/torrent/torrent-/ ! -path '/torrent-hold/' ! -path '/torrent-incomplete/' ! -path '/torrent-files/' -mtime +3d ! -name '.part' ! -name '.!qB' -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null ; /usr/bin/find /mnt/pool0/p0ds1nfs/torrent/torrent-/ -depth ! -path '/torrent-hold/' ! -path '/torrent-incomplete/' ! -path '/torrent-files/' -type d -empty -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null http://www.wael.name/wael.list.p2p.gz screen -dmS rclone-edu-01 bash -c 'rclone sync --bwlimit 3M --progress --checksum --no-update-modtime --transfers 10 --checkers 10 --tpslimit 10 --update --filter-from /root/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=true --delete-during --log-level INFO --low-level-retries 30 --log-file /root/.config/rclone/upload.log /mnt/pool0/p0ds0smb rclone-edu-01:/rclone-edu-01/p0ds0smb 2>&1 | tee /root/.config/rclone/rclone-edu-01.log' jexec 19 /usr/local/bin/screen -dmS rclone-edu-01 bash -c 'rclone sync --bwlimit 3M --progress --transfers 12 --checkers 10 --tpslimit 10 --checksum --update --filter-from /root/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 50 --drive-use-trash=true --delete-during --log-level INFO --low-level-retries 30 --log-file /root/.config/rclone/upload.log /mnt/pool0/p0ds0smb rclone-edu-01:/rclone-edu-01/p0ds0smb 2>&1 | tee /root/.config/rclone/rclone-edu-01.log' NetworkManager[8364]: [1571277759.3456] error requesting auth for org.freedesktop.NetworkManager.enable-disable-network: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3466] error requesting auth for org.freedesktop.NetworkManager.sleep-wake: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3470] error requesting auth for org.freedesktop.NetworkManager.enable-disable-wifi: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3476] error requesting auth for org.freedesktop.NetworkManager.enable-disable-wwan: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3481] error requesting auth for org.freedesktop.NetworkManager.enable-disable-wimax: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3486] error requesting auth for org.freedesktop.NetworkManager.network-control: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3491] error requesting auth for org.freedesktop.NetworkManager.wifi.share.protected: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3498] error requesting auth for org.freedesktop.NetworkManager.wifi.share.open: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3503] error requesting auth for org.freedesktop.NetworkManager.settings.modify.system: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3508] error requesting auth for org.freedesktop.NetworkManager.settings.modify.own: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3514] error requesting auth for org.freedesktop.NetworkManager.settings.modify.hostname: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3518] error requesting auth for org.freedesktop.NetworkManager.settings.modify.global-dns: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3523] error requesting auth for org.freedesktop.NetworkManager.reload: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3528] error requesting auth for org.freedesktop.NetworkManager.checkpoint-rollback: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3533] error requesting auth for org.freedesktop.NetworkManager.enable-disable-statistics: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory NetworkManager[8364]: [1571277759.3539] error requesting auth for org.freedesktop.NetworkManager.enable-disable-connectivity-check: Authorization check failed: Failed to open file “/proc/26030/status”: No such file or directory nmap -sP -PA21-22,389,445,3389 10.10.10.1/24 #21 is used by ftp brltty cinnamon cinnamon-dbg gir1.2-gnomebluetooth-1.0 libbluetooth3 libgnome-bluetooth13 mint-meta-cinnamon network-manager network-manager-config-connectivity-ubuntu network-manager-gnome network-manager-l2tp network-manager-l2tp-gnome network-manager-openvpn network-manager-openvpn-gnome network-manager-pptp network-manager-pptp-gnome obex-data-server supertuxkart JPG Le Male Jean Paul Gaultier Le Male [HDD3.55TVMFS6-2] win2016-4.ad.blog.travisrunyard.us/win2016-4.ad.blog.travisrunyard.us_1.vmdk The storage backing for virtual disk '/vmfs/volumes/5d99a6fc-ca8b4635-76c5-001fbc0f29c1/win2016-4.ad.blog.travisrunyard.us/win2016-4.ad.blog.travisrunyard.us_1.vmdk' has been permanently lost. You may be able to hot remove this virtual device from the virtual machine and continue after clicking Retry. Click Cancel to terminate this session. https://mega.nz/#!e1hzlI7I!CNrbeiPvDgvSqdNK4vLfSYOPdPX7NvysO3b5acl4h_s @reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-movies /usr/local/jellyfin/media/video-movies --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-shows /usr/local/jellyfin/media/video-shows --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-standup /usr/local/jellyfin/media/video-standup --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-tech /usr/local/jellyfin/media/video-tech --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-tennis /usr/local/jellyfin/media/video-tennis --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/podcasts /usr/local/jellyfin/media/podcasts --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only width: 100px; height: 100px; background-color: red; position: absolute; top:0; bottom: 0; left: 0; right: 0; margin: auto; <div style="width: 100%; height: 100%; background-color: red; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto;"> Access Key: <redacted> Secret Key: <redacted> find /mnt/pool0/p0ds0smb/video-* -depth -type d -iname "sample" -print0 | xargs -0 /bin/rm -rfv 1>/dev/null ; find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f ! \( -iname "*.mp4" -o -iname "*.avi" -o -iname "*.srt" -o -iname "*.mkv" -o -iname "*.m4v" -o -iname "*.sub" -o -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" -o -iname "*.sfv" -o -iname "*.mpg" -o -iname "*.mpeg" -o -iname "*.nfo" -o -iname "*.idx" -o -iname ".ignore" -o -iname ".*" -o -iname "*.ac3" -o -ipath "*.~tmp~*" -o -ipath "*episode*" -o -ipath '*sub*' -o -ipath "*video_ts*" \) -print0 | xargs -0 /bin/rm -rfv 1>/dev/null ; find /mnt/pool0/p0ds0smb/video-movies /mnt/pool0/p0ds0smb/video-shows -type f \( -iname "*YIFY*.jpg" -o -iname "*YTS*.jpg" \) -print0 | xargs -0 /bin/rm -rfv problem 35:12 firedogs for i in $(find . -type f -name *.mkv); do ffmpeg -i "$i" -movflags faststart -c:a aac -c:v libx264 -b:a 128k "${i%.flv}.mkv"; done for i in *.avi; do ffmpeg -i "$i" "${i%.*}.mp4"; done INPUT="$1" for f in $(find . -type f -name '*265.mkv'); do ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -movflags +faststart -c:v libx264 -c:a copy -crf 23 "${i/%265.mkv/264.mkv}" done for f in $(find . -type f -name '*265.mkv'); do ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -movflags +faststart -c:v libx264 -c:a copy -crf 23 "${f/%265.mkv/264.mkv}"; done for f in *.mkv; do ffmpeg -i "$f" -map 0 -movflags faststart -c:v libx264 -c:a copy -c:s copy -crf 23 "${f/x265/x264}"; done /usr/bin/find /mnt/pool0/p0ds1nfs/torrent/torrent-*/* ! -path '*/torrent-hold/*' ! -path '*/torrent-incomplete/*' ! -path '*/torrent-files/*' -mtime +3d ! -name '*.part' ! -name '*.!qB' -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null ; /usr/bin/find /mnt/pool0/p0ds1nfs/torrent/torrent-*/* -depth ! -path '*/torrent-hold/*' ! -path '*/torrent-incomplete/*' ! -path '*/torrent-files/*' -type d -empty -print0 2>/dev/null | xargs -0 /bin/rm -rf 2>/dev/null https://sysinfo.us-east-1.linodeobjects.com/dl/com-mod-vpn-client-pro-v1-00-80-patched.apk http://www.mediafire.com/file/dof6d15a9op1s3s/com-mod-vpn-client-pro-v1-00-80-patched.apk/file https://mega.nz/#!mkY2VSoQ!le4AGlhltDPIB8UEfAxXtMuN-mEIDzYDlZOeHIZeUP0 https://mega.nz/#!IERjAKYZ!le4AGlhltDPIB8UEfAxXtMuN-mEIDzYDlZOeHIZeUP0 code-settings-sync — gist 9ded770c9c6b124006270aff58a7e43df56febad screen -dmS rclone-edu-02 bash -c 'rclone sync --bwlimit 2M --progress --checksum --no-update-modtime --transfers 4 --checkers 8 --tpslimit 2 --update --drive-acknowledge-abuse --drive-pacer-burst 100 --drive-use-trash=true --log-level INFO --low-level-retries 50 --delete-during --log-file ~/.config/rclone/upload-rclone-edu-02.log ./mom rclone-edu-01:/hold/mom 2>&1 | tee ~/.config/rclone/rclone-edu-02.log' Matches: from:(-jobs@dice.com OR -employer@msg.monster.com OR -*@ziprecruiter.com OR -*icims.com OR -hhmazaheri@gmail.com OR -*@mbg.com OR -*@salesforce.com OR -*@zendesk.com) ("resume" OR "career" OR "jobs" OR "job description" OR "systems administrator" OR "system administrator" OR "engineer" OR "interview" OR "agency" OR "recruiter" OR "recruiting") -{"huntington" OR "newport" OR "irvine" OR "tustin" OR "long beach" OR "los angeles" OR "LA" OR "lake forest" OR "aliso viejo" OR "santa ana" OR "costa mesa" OR "fountain valley" OR "anaheim" OR "orange"} -in:chats Do this: Skip Inbox, Mark as read, Send template "Recruiter_Location_Radius" Matches: from:(-jobs@dice.com OR -employer@msg.monster.com OR -*@ziprecruiter.com OR -*icims.com OR -hhmazaheri@gmail.com OR -*@mbg.com OR -*@salesforce.com OR -*@zendesk.com) ("resume" OR "career" OR "jobs" OR "job description" OR "systems administrator" OR "system administrator" OR "engineer" OR "interview" OR "agency" OR "recruiter" OR "recruiting") -{"huntington" OR "newport" OR "irvine" OR "tustin" OR "long beach" OR "los angeles" OR "LA" OR "lake forest" OR "aliso viejo" OR "santa ana" OR "costa mesa" OR "fountain valley" OR "anaheim" OR "orange"} -in:chats Do this: Skip Inbox, Mark as read, Send template "Recruiter_Location_Radius" Matches: from:(-jobs@dice.com OR -employer@msg.monster.com OR -*@ziprecruiter.com OR -*icims.com OR -hhmazaheri@gmail.com OR -*@mbg.com OR -*@salesforce.com OR -*@zendesk.com) (";resume"; OR ";career"; OR ";jobs"; OR ";job description"; OR ";systems administrator"; OR ";system administrator"; OR ";engineer"; OR ";interview"; OR ";agency"; OR ";recruiter"; OR ";recruiting";) -{";huntington"; OR ";newport"; OR ";irvine"; OR ";tustin"; OR ";long beach"; OR ";los angeles"; OR ";LA"; OR ";lake forest"; OR ";aliso viejo"; OR ";santa ana"; OR ";costa mesa"; OR ";fountain valley"; OR ";anaheim"; OR ";orange";} -in:chats Do this: Skip Inbox, Mark as read, Send template "Recruiter_Location_Radius" yjcb3iqfgsoisvkoaoajuol5lssujuo72nuvf4w5oehmsq5xmtp3udad.onion apt install autoconf build-essential git libsodium-dev ; \ git clone https://github.com/cathugger/mkp224o.git && \ cd mkp224o && ./autogen.sh && ./configure && make ./mkp224o -s -T trflix screen -dmS mkp224o ./mkp224o -v -s -T travisflix trflixgteky7uy62zadiov6g2hvdzdgirxsy6nsfoj3hmioyrfhmadad.onion @reboot rclone mount ftp-home:/mnt/pool0/p0ds0smb/video-movies /usr/local/jellyfin/media/video-movies --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount ftp-home:/mnt/pool0/p0ds0smb/video-shows /usr/local/jellyfin/media/video-shows --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount ftp-home:/mnt/pool0/p0ds0smb/video-standup /usr/local/jellyfin/media/video-standup --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount ftp-home:/mnt/pool0/p0ds0smb/video-tech /usr/local/jellyfin/media/video-tech --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount ftp-home:/mnt/pool0/p0ds0smb/video-tennis /usr/local/jellyfin/media/video-tennis --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount ftp-home:/mnt/pool0/p0ds0smb/podcasts /usr/local/jellyfin/media/podcasts --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-movies /usr/local/jellyfin/media/video-movies --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-shows /usr/local/jellyfin/media/video-shows --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-standup /usr/local/jellyfin/media/video-standup --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-tech /usr/local/jellyfin/media/video-tech --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-tennis /usr/local/jellyfin/media/video-tennis --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/podcasts /usr/local/jellyfin/media/podcasts --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only S3 UserName / <redacted> gmedia-rclone.service screen -dmS rclone-pipeline bash -c 'rclone sync --bwlimit 8M --progress --checksum --no-update-modtime --transfers 8 --checkers 10 --tpslimit 8 --update --filter-from /root/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 100 --drive-use-trash=true --log-level INFO --low-level-retries 50 --delete-during --log-file /root/.config/rclone/log/upload-p0ds0smb.log /mnt/pool0/p0ds0smb/video-shows rclone-pipeline:/backup/p0ds0smb/video-shows 2>&1 | tee /root/.config/rclone/log/rclone-pipeline.log' screen -dmS rclone-pipeline-2 bash -c 'rclone sync --bwlimit 8M --progress --checksum --no-update-modtime --transfers 8 --checkers 10 --tpslimit 8 --update --filter-from /root/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 100 --drive-use-trash=true --log-level INFO --low-level-retries 50 --delete-during --log-file /root/.config/rclone/log/upload-p0ds0smb.log /mnt/pool0/p0ds0smb/video-movies rclone-pipeline:/backup/p0ds0smb/video-movies 2>&1 | tee /root/.config/rclone/log/rclone-pipeline.log' rclone serve http /mnt/pool0/p0ds0smb/ --addr :8081 --user UserName --pass Password chroot dnsutils ethtool iw ncurses-utils netcat nmap rsync sensible-utils vtutils rsync -rltzuv --delete /home/UserName/mnt/pool0/p0ds0smb/UserName /media/veracrypt1 Stale Authy 2FA token for Cloudflare in my Authy account. I would like to delete it permanently. I have already disabled 2FA on my Cloudflare account which was using a regular 2FA authenticator token anyways. Im not exactly sure what happened but it seems as though I originally setup 2FA on Cloudflare using Authy tokens, changed my phone number, restored my Cloudflare account token using backup passphrase, disabled it again in Cloudflare, then set it up with normal 2FA authenticator token, which I have since disabled to keep it simple. include /config/nginx/cloudflare_setrealip.conf; add_header X-Nginx-IPCountry $HTTP_CF_IPCOUNTRY; proxy_set_header Range $http_range; proxy_set_header If-Range $http_if_range; proxy_redirect off; proxy_pass_request_headers on; #Send websocket data to the backend aswell proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $http_connection; #proxy_set_header Connection "Upgrade"; The cloud storage account which serves travisflixs inventory has been deleted. I am currently re-uploading 4.5 TB of media to a new cloud account. In the meantime, the inventory has been temporarily re-configured to pull from my local server and there should be zero impact on playback. Additionally, travisflix has a new Tor address. Computer-literate people: Please test and report issues- trflixgteky7uy62zadiov6g2hvdzdgirxsy6nsfoj3hmioyrfhmadad.onion /* background-image: url("/web/img/6-1.jpg"); */ background-image: url("/web/img/cuban-beach-02.jpg"); OAuth Client ID: OAuth Client Secret: https://console.cloud.google.com/apis/api/drive.googleapis.com/metrics?project= ID: <redacted> PIN: <redacted> OAuth client ID: OAuth client secret: sudo add-apt-repository -y ppa:micahflee/ppa && sudo apt update; sudo apt install -y onionshare screen -dmS rclone-pipeline bash -c 'rclone sync --bwlimit 6M --progress --checksum --no-update-modtime --transfers 8 --checkers 10 --tpslimit 10 --update --filter-from /root/.config/rclone/filter-file.txt --drive-acknowledge-abuse --drive-pacer-burst 100 --drive-use-trash=true --log-level INFO --delete-during --log-file /root/.config/rclone/log/upload-p0ds0smb.log /mnt/pool0/p0ds0smb/video-shows rclone-pipeline:/backup/p0ds0smb/video-shows 2>&1 | tee /root/.config/rclone/log/rclone-pipeline.log' rclone sync --bwlimit 5M --progress --checksum --no-update-modtime --transfers 8 --checkers 10 --tpslimit 10 --update --filter-from /root/.config/rclone/filter-file-video.txt --drive-acknowledge-abuse --drive-pacer-burst 100 --drive-use-trash=true --log-level INFO --delete-during --log-file /root/.config/rclone/log/upload-redacted-crypt.log /mnt/pool0/p0ds0smb rclone-redacted-crypt:/p0ds0smb @reboot screen -dmS rclone-redacted-crypt rclone sync --bwlimit 5M --progress --transfers 8 --checkers 10 --tpslimit 10 --update --filter-from /root/.config/rclone/filter-file-video.txt --drive-acknowledge-abuse --drive-use-trash=true --log-level INFO --delete-during --log-file $HOME/.config/rclone/log/upload-redacted-crypt.log /mnt/pool0/p0ds0smb rclone-redacted-crypt:/p0ds0smb 2>&1 | tee $HOME/.config/rclone/log/rclone-redacted-crypt.log /etc/letsencrypt/live/blog.travisrunyard.us/fullchain.pem openssl pkcs12 -export -out sysinfoio.pfx -inkey privkey.pem -in cert.pem -certfile fullchain.pem rename 's/\.pem/1\.pem/s' /etc/letsencrypt/live/blog.travisrunyard.us/* ssl_certificate_key /etc/letsencrypt/live/blog.travisrunyard.us/privkey.pem; ssl_certificate /etc/letsencrypt/live/blog.travisrunyard.us/fullchain.pem; HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity\ Windows 10 Disable Device Guard %%sitename%% %%page%% %%sep%% %%sitedesc%% 47.153.16.57 - - [10/Jul/2018:06:24:15 -0700] "GET /export-active-directory-users/ HTTP/1.1" 200 18893 "https://blog.travisrunyard.us/auto-create-outlook-mapi-user-profiles/" "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Mobile Safari/537.36" "47.153.16.57" "blog.travisrunyard.us" sn="blog.travisrunyard.us" rt=0.303 ua="127.0.0.1:9000" us="200" ut="0.303" ul="77621" cs=MISS 47.153.16.57 - - [10/Jul/2018:06:24:30 -0700] "GET /export-active-directory-users/ HTTP/1.1" 304 0 "https://blog.travisrunyard.us/auto-create-outlook-mapi-user-profiles/" "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Mobile Safari/537.36" "47.153.16.57" "blog.travisrunyard.us" sn="blog.travisrunyard.us" rt=0.000 ua="-" us="-" ut="-" ul="-" cs=HIT root@nginx03:~# curl ipconfig.io/json;echo {"ip":"47.100.16.27","ip_decimal":795086875,"country":"United States","city":"Fremont"} rclone mount rclone-redacted-crypt:/p0ds0smb/video-movies /usr/local/jellyfin/media/video-redacted --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only legacy: 1Bswmdjb7scj4NSfYjRPx1frgHm2ZoAohL segwit: 3LsfxBRMzK9QSuAJo5sKCRBFCVXJAEvc9E native segwit: bc1q690p3utevcus3mscnq5anegz7a3m7cjv4vvd6g Ripple XRP: rE9nGX3FXPydBDUHJWE9zSFaiWakpyfu8G apg -M SNCL -n 8 -a 1 -y -m 18 -x 20 -r ~/Documents/word-list.txt ssh-rsa [gdrive-redacted] type = drive client_id = client_secret = scope = drive token = {"access_token":"","token_type":"Bearer","refresh_token":"","expiry":"2020-01-10T03:49:10.210741588-08:00"} root_folder_id = [gcrypt-redacted] type = crypt remote = gdrive-redacted:/gcrypt filename_encryption = standard directory_name_encryption = true password = password2 = [gdrive-redacted] type = drive client_id = client_secret = scope = drive token = {"access_token":"","token_type":"Bearer","refresh_token":"","expiry":"2020-01-10T06:06:34.077667751-08:00"} root_folder_id = [gcrypt-redacted] type = crypt remote = gdrive-redacted:gcrypt filename_encryption = standard directory_name_encryption = true password = password2 = #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-movies /usr/local/jellyfin/media/video-movies --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-shows /usr/local/jellyfin/media/video-shows --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-standup /usr/local/jellyfin/media/video-standup --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-tech /usr/local/jellyfin/media/video-tech --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/video-tennis /usr/local/jellyfin/media/video-tennis --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only #@reboot rclone mount rclone-edu-01:/rclone-edu-01/p0ds0smb/podcasts /usr/local/jellyfin/media/podcasts --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot rclone mount gcrypt-redacted:p0ds0smb/video-movies /mnt/gcrypt-redacted/video-movies --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount gcrypt-redacted:p0ds0smb/video-shows /mnt/gcrypt-redacted/video-shows --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount gcrypt-redacted:p0ds0smb/video-standup /mnt/gcrypt-redacted/video-standup --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount gcrypt-redacted:p0ds0smb/video-tech /mnt/gcrypt-redacted/video-tech --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount gcrypt-redacted:p0ds0smb/video-tennis /mnt/gcrypt-redacted/video-tennis --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount gcrypt-redacted:p0ds0smb/podcasts /mnt/gcrypt-redacted/podcasts --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount http-home:/video-shows /mnt/http-home/video-shows --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount http-home:/video-movies /mnt/http-home/video-movies --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount http-home:/video-standup /mnt/http-home/video-standup --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount http-home:/video-tech /mnt/http-home/video-tech --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount http-home:/podcasts /mnt/http-home/podcasts --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot rclone mount http-home:/video-tennis /mnt/http-home/video-tennis --daemon --vfs-cache-mode off --dir-cache-time 60m --read-only @reboot /usr/bin/rclone mount gcrypt-redacted:p0ds0smb /mnt/gcrypt-redacted --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only @reboot /usr/bin/rclone mount http-home: /mnt/http-home --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only /usr/bin/mergerfs /mnt/gcrypt-redacted:/mnt/http-home /usr/local/jellyfin/media -o ro,async_read=false,use_ino,allow_other,func.getattr=newest,dropcacheonclose=true #fstab: /mnt/gcrypt-redacted:/mnt/http-home /usr/local/jellyfin/media fuse.mergerfs ro,async_read=false,use_ino,allow_other,func.getattr=newest,dropcacheonclose=true 0 0 https://dl.dropboxusercontent.com/s/9xyenoh1ztvt0v3/construction-simple.svg?dl=0 https://dl.dropboxusercontent.com https://www.dropbox.com/s/s9h0z595gibf0kb/construction-simple.svg?dl=0 https://dl.dropboxusercontent.com/s/s9h0z595gibf0kb/construction-simple.svg?dl=0 #!/usr/bin/env bash # RClone Config file RCLONE_CONFIG=/root/.config/rclone/rclone.conf SCREEN_NAME=$(basename "$0" | cut -d '.' -f 1) export RCLONE_CONFIG export SCREEN_NAME #exit if running if ! [[ $(screen -S "$SCREEN_NAME" -Q select .) ]]; then echo "$SCREEN_NAME is running, exiting..." exit 1 fi #if [[ $(pidof -x "$0" | wc -w) -gt 2 ]]; then # echo "$0 already running" # exit #fi usage() { echo "usage: rclone-sync-p0ds0smb.sh [-b | --bandwidth specify bandwidth as an integer | -h | --help shows this message]" } if [ "$1" != "" ]; then BANDWIDTH= while [ "$1" != "" ]; do case $1 in -b | --bandwidth ) shift BANDWIDTH=$1 export BANDWIDTH ;; -h | --help ) usage exit 0 ;; * ) usage exit 1 esac shift done screen -dmS $SCREEN_NAME bash -c 'rclone sync --bwlimit "$BANDWIDTH"M --progress --transfers 8 --checkers 10 --tpslimit 10 --update --filter-from $HOME/.config/rclone/filter-p0ds0smb.txt --drive-acknowledge-abuse --drive-use-trash=true --log-level INFO --delete-during --log-file $HOME/.config/rclone/log/upload-gcrypt-redacted.log /mnt/pool0/p0ds0smb gcrypt-redacted:/p0ds0smb 2>&1 | tee $HOME/.config/rclone/log/gcrypt-redacted.log' else screen -dmS $SCREEN_NAME bash -c 'rclone sync --bwlimit 4M --progress --transfers 8 --checkers 10 --tpslimit 10 --update --filter-from $HOME/.config/rclone/filter-p0ds0smb.txt --drive-acknowledge-abuse --drive-use-trash=true --log-level INFO --delete-during --log-file $HOME/.config/rclone/log/upload-gcrypt-redacted.log /mnt/pool0/p0ds0smb gcrypt-redacted:/p0ds0smb 2>&1 | tee $HOME/.config/rclone/log/gcrypt-redacted.log' fi #m h dom mon dow /usr/bin/rclone mount gcrypt-redacted:p0ds0smb /mnt/pool0/p0ds0smb/gdrive/gcrypt-redacted --daemon --vfs-cache-mode off --dir-cache-time 30m --read-only /usr/bin/rclone mount gcrypt-redacted:p0ds0smb /media/UserName/gcrypt-redacted --daemon --vfs-cache-mode off --dir-cache-time 30m /usr/bin/rclone mount gcrypt-redacted:p0ds0smb /media/UserName/gcrypt-redacted --daemon --vfs-cache-mode off --dir-cache-time 30m # Verify files are actually in the trash and do a comparison count on trashed and un-trashed files rclone ls --drive-trashed-only --crypt-show-mapping gcrypt-redacted:/p0ds0smb/video-shows/dir1 rclone ls --drive-trashed-only gcrypt-redacted:/p0ds0smb/video-shows/dir1|wc -l rclone ls gcrypt-redacted:/p0ds0smb/video-shows/dir1|wc -l # Perform server-side copy operation of trashed files into new destination (appended "-Trash"). I tried move which didn't work, but copy did. rclone copy --progress --drive-trashed-only --drive-server-side-across-configs gcrypt-redacted:/p0ds0smb/video-shows/dir1 gcrypt-redacted:/p0ds0smb/video-shows/dir1-Trash # Count the restored files rclone ls gcrypt-redacted:/p0ds0smb/video-shows/dir1-Trash|wc -l # Mounted the drive and counted restored files as alternative method find /media/UserName/gcrypt-redacted/video-shows/dir1-Trash -type f -print | wc -l # Purge the original directory that originally contained the files that were accidentally deleted rclone purge gcrypt-redacted:/p0ds0smb/video-shows/dir1 # Rename the restored directory back to the original rclone move --drive-server-side-across-configs gcrypt-redacted:/p0ds0smb/video-shows/dir1-Trash gcrypt-redacted:/p0ds0smb/video-shows/dir1 # Re-verify the restored file count rclone ls gcrypt-redacted:/p0ds0smb/video-shows/dir1|wc -l Client ID <redacted> Client secret <redacted> delete rclone-gdrive-264920 for f in *.mkv; do ffmpeg -i "$f" -map 0 -map 0:s:3 -movflags faststart -c:v libx264 -c:a copy -c:s copy -crf 23 "${f/x265 Silence/x264}"; done rsync --recursive --times --update --compress --itemize-changes --progress --noatime --human-readable --stats --verbose --log-file="/home/$USER/rsyncloose.log" /home/UserName/Documents/scripts/linux/* /media/UserName/p0ds0smb/UserName/Documents/Scripts/linux/ for f in *.mkv; do ffmpeg -i "$f" -map 0 -map 0:s:3 -movflags faststart -c:v libx264 -c:a copy -c:s copy -crf 23 "${f/x265 Silence/x264}"; done mkdir tmp; for f in *.mkv; do ffmpeg -i "$f" -map 0 -movflags faststart -c:v libx264 -c:a copy -c:s copy -crf 23 "tmp/${f/x265/x264}"; done for i in $(find . -type f -name "*.mp4"); do ffmpeg -i "$i" -map 0 -c:v copy -c:a aac -b:a 128k -c:s copy "tmp/${i}"; done ## find . -type f -name "*.mkv" -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s:0? -movflags faststart -c:v libx264 -ac 6 -ar 48000 -b:a 768k -c:a aac -c:s copy -crf 23 "${0/x265/x264}"' {} \; find . -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s:0? -movflags faststart -c:v libx264 -ac 6 -ar 48000 -b:a 768k -c:a aac -c:s copy -crf 23 "${0/x265/x264}"' {} \;; find . -name '*x265*' -type f -delete find . -depth -name '*x265*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s:0? -movflags faststart -c:v libx264 -c:a copy -c:s copy -crf 23 "${0/x265/x264}"' {} \;; find . -name '*x265*' -type f -delete ## mkdir tmp; touch ./tmp/.ignore; for i in *.mkv; do ffmpeg -i "$i" -map 0 -c:v copy -ac 6 -ar 48000 -b:a 384k -c:a aac -c:s copy "tmp/${i}"; done; rm ./*.mkv && mv ./tmp/*.mkv . for i in *.mp4; do ffmpeg -i "$i" -map 0:v:0 -map 0:a:0 -map 0:2 -c:v copy -c:a aac -b:a 384k -c:s copy "tmp/${i}"; done for i in *.mp4; do ffmpeg -i "$i" -map 0:v:0 -map 0:a:0 -map 0:s:0 -c:v copy -ac 6 -ar 48000 -b:a 384k -c:a aac "tmp/${i}"; done mkdir tmp; for i in *.mkv; do ffmpeg -i "$i" -map 0:v:0 -map 0:a:0 -map 0:s:0 -c:v copy -ac 6 -ar 48000 -b:a 768k -c:a aac "tmp/${i}"; done mkdir tmp; for i in *.mkv; do ffmpeg -i "$i" -map 0:v:0 -map 0:a:0 -map 0:s:0 -c:v copy -ac 6 -ar 48000 -b:a 192k -c:a aac "tmp/${i}"; done -map 0:v:0 -map 0:a:0 -map 0:a:0 -map 0:s:0? --vfs-read-chunk-size @reboot /usr/bin/rclone mount gcrypt-redacted:p0ds0smb /mnt/gcrypt-redacted --daemon --vfs-cache-mode off --dir-cache-time 5m --read-only @reboot /usr/bin/rclone mount http-home: /mnt/http-home --daemon --vfs-cache-mode off --vfs-read-chunk-size 10M --vfs-read-chunk-size-limit 100M --dir-cache-time 5m --read-only I will accept Bitcoin (BTC) in payment for this item without exceptions. If this proves to work well, I might decide to accept other crypto-currencies such as LTC, XRP, DASH or XMR. Paypal is taking a cut of 33% and in my opinion that is ridiculous. Bitcoin (BTC) address: bc1q690p3utevcus3mscnq5anegz7a3m7cjv4vvd6g h8uC.2UQ-Ztgi5- rename -v 's/\[1080p\ Web\ x265\]\[AAC\ 5\.1\]\[Sub\]\[Ch\]/1080p\ x264/' * https://api.nzbgeek.info/rss?t=0&dl=1&num=200&r=82793860375405 https://api.nzbgeek.info/rss?t=2000,2010,2020,2040,2050,3000,3010,3020,3030,4000,4010,4020,4030,4040,4050,4070,5000,5040,5060,5070,5080,6000,6010,6040,7000,7010,7020,7030,8000,8010&dl=1&r=82793860375405 UUCP/Usenet Logical Map — June 1, 1981 / mods by S. McGeady November 19, 1981 # Convert H.265 > H.264 and convert 6CH AC3 audio to AAC and copy only the first subtitle stream find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s:0? -movflags faststart -c:v libx264 -ac 6 -ar 48000 -b:a 768k -c:a aac -c:s copy -crf 23 "${0/x265/x264}"' {} \; find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s:0? -movflags faststart -c:v libx264 -ac 6 -ar 48000 -b:a 768k -c:a aac -c:s copy -crf 23 "${0/x265/x264}"' {} \;; find . -name '*x265*' -type f -delete find . -depth -name '*x265*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s:0? -movflags faststart -c:v libx264 -c:a copy -c:s copy -crf 23 "${0/x265/x264}"' {} \;; find . -name '*x265*' -type f -delete # Convert H.265 > H.264 and convert 6CH AC3 audio to AAC and copy all subtitle streams find . -depth -name '*x265*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s -movflags faststart -c:v libx264 -ac 6 -ar 48000 -b:a 768k -c:a aac -c:s copy -crf 23 "${0/x265/x264}"' {} \;; find . -name '*x265*' -type f -delete # Convert H.265 > H.264 and retain original audio and all subtitles: find . -depth -name '*x265*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s -movflags faststart -c:v libx264 -c:a copy -c:s copy -crf 23 "${0/x265/x264}"' {} \;; find . -name '*x265*' -type f -delete # Copy original video stream and convert 6CH AC3 audio to AAC and copy all subtitle streams (if exist) find . -depth -name '*x265*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac 6 -ar 48000 -b:a 768k -c:a aac -c:s copy "${0/x265/x264}"' {} \;; find . -name '*x265*' -type f -delete find . -depth -name '*TBS.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac 6 -ar 48000 -b:a 256k -c:a aac -c:s copy "${0/-TBS/.AAC}"' {} \; find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a -map 0:s? -c:v copy -ac 6 -ar 48000 -b:a 640k -metadata:s:a:0 language=eng -c:a aac -c:s copy "./working/${0/H264-AMRAP/AAC5.1.x264}"' {} \; find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a -map 0:s? -c:v copy -ac 6 -ar 48000 -b:a 768k -metadata:s:a:0 language=eng -c:a aac -c:s copy "${0/X264-AMRAP/AAC5.1.x264}"' {} \; # Copy original video stream and convert 2CH AC3 audio to AAC and copy all subtitle streams find . -depth -name '*x265*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s -c:v copy -ar 48000 -b:a 384k -c:a aac -c:s copy "${0/x265/x264}"' {} \;; find . -name '*x265*' -type f -delete # Just strip all subtitles: find . -depth -name '*(2000)*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -c:v copy -c:a copy "${0/ (2000)/}"' {} \;; find . -name '*(2000)*' -type f -delete find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -c:v copy -c:a copy "${0/.mkv/2.mkv}"' {} \; # other find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac 6 -ar 48000 -b:a 640k -c:a aac -c:s copy "${0/DDP5.1/AAC}"' {} \; find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac 6 -ar 48000 -b:a 640k -c:a aac -c:s copy "${0/AC3/AAC}"' {} \; find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:a:1 -map 0:s? -c:v copy -ac 6 -ar 48000 -c:a:0 aac -c:a:1 copy -c:s copy "${0/DTS/AAC}"' {} \; find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:a:1 -c:v copy -ac 6 -ar 48000 -c:a:0 aac -c:a:1 copy "${0/DD5.1/AAC5.1}"' {} \; find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -f srt -i "${0/mkv/en.srt}" -map 0:v -map 0:a -map 1:0 -c:v copy -c:a copy -c:s srt ./sub/"${0}"' {} \; find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -f srt -i "${0/mkv/en.srt}" -map 0:v:0 -map 0:a:0 -map 0:a:1 -map 1:0 -c:v copy -ac 6 -ar 48000 -c:a:0 aac -c:a:1 copy -c:s srt ./working/"${0/DD5.1/AAC5.1}"' {} \; # Futurama Season 7 custom, 2-3 AC3 audio streams with the first having 6-channel and between 1-2 AC3 2-channel commentary tracks, a non-standard hdmv_pgs_subtitle subtitle track ususally at stream 0:3 requiring dropping and replacement with external .srt file find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -f srt -i "${0/mkv/en.srt}" -map 0:v:0 -map 0:a:0 -map 0:a:1 -map 0:a:2? -map 1:0 -c:v copy -ac:0 6 -ac:1 2 -ac:2 2 -ar 48000 -c:a:0 aac -c:a:1 aac -c:a:2 aac -c:s srt ./working/"${0/DD5.1/AAC5.1}"' {} \; find . -depth -name '*AMIABLE.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:a:1 -map 0:s? -c:v copy -ac 6 -ar 48000 -b:a:0 1536k -b:a:1 448k -c:a:0 aac -c:a:1 aac -c:s copy ./working/"${0/-AMIABLE/.AAC}"' {} \; # Copy original video stream and convert 2CH MPEG 320 kb/s bit rate audio to AAC and copy subtitle streams (if exist) find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ar 44100 -b:a 320k -c:a aac -c:s copy "${0/ HQ-CPG/}"' {} \; # ETC find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac 6 -ar 48000 -b:a 640k -c:a aac -c:s copy "${0/-REWARD/.AAC}"' {} \; find . -depth -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -f srt -i "Holy.Hell.2016.720p.HDTV.x264-DHD[ettv].en.srt" -map 0:v:0 -map 0:a:0 -map 1:0 -c:v copy -ac 6 -ar 48000 -b:a 448k -c:a aac -c:s srt "${0/-DHD/.AAC5.1}"' {} \; find . -depth -name '*.mp4' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a:0 -map 0:a:1 -map 0:s? -c:v copy -ac:0 6 -ac:1 2 -ar 48000 -b:a:0 640k -c:a aac -c:s copy "${0/Ac3/AAC}"' {} \; find . -depth -maxdepth 1 -name '*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -map 0:v:0 -map 0:a -movflags faststart -c:v libx264 -c:a copy -crf 23 "${0/x265/x264}"' {} \; find . -depth -maxdepth 1 -name '*.avi' -type f -exec bash -c 'ffmpeg -i "$0" -f srt -i "${0/.avi/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -movflags faststart -c:v libx264 -ac 2 -ar 48000 -b:a 128k -c:a aac -c:s srt -crf 20 ./mkv/"${0/avi/mkv}"' {} \; # Convert H.265 > H.264, copy input audio, drop input subtitles, insert external subtitle find . -depth -maxdepth 1 -name '*.mkv' -type f -exec bash -c 'ffmpeg -y -loglevel verbose -vsync 0 -i "$0" -f srt -i "${0/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -movflags faststart -c:v libx264 -c:a copy -c:s srt -crf 20 ./working/"${0/x265/x264}"' {} \; find . -mount -depth -maxdepth 1 -name '*HEVC*.mkv' -type f -exec bash -c 'ffmpeg -i "$0" -f srt -i "${0/.mkv/.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -movflags faststart -c:v libx264 -metadata:s:a:0 language=eng -c:a copy -metadata:s:s:0 language=eng -disposition:s:0 default -c:s srt -crf 20 "./working/${0/10bit.BluRay.AAC5.1.HEVC-Vyndros.mkv/BluRay.AAC5.1.x264.mkv}"' {} \; find . -depth -maxdepth 1 -name '*.mkv' -type f -exec bash -c 'ffmpeg -y -loglevel verbose -vsync 0 -i "$0" -f srt -i "${0/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -movflags faststart -c:v libx264 -metadata:s:a:0 language=eng -c:a copy -metadata:s:s:0 language=eng -disposition:s:0 default -c:s srt -crf 21 ./working/"${0/x265/x264}"' '{}' \; http://travisrunyard.co/resume/Travis-Runyard_02092020.docx http://travisrunyard.co/resume/Travis-Runyard_02092020.pdf http://travisrunyard.co/resume/Travis-Runyard_02092020.txt ^(?/uploads/).*\ location ^~ /uploads/ { } location ~* \[A-Z].(png|gif|ico|jpg|jpe?g)$ { gzip_static on; gzip on; expires max; add_header Cache-Control public; } location ~ ^(/wp-content/uploads/).*\.(png|gif|ico|jpg|jpe?g)$ { } location ~ ^(/wp-content/uploads/).*\.(png|PNG|gif|GIF|ico|jpg|JPG|jpe?g)$ { rewrite ^(.*)$ $scheme://$host$uri_lowercase; } Australian Open 2018 SF Hyeon Chung vs Roger Rederer 1080i youtube-dl -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/bestvideo+bestaudio' --merge-output-format 'mp4' 'https://www.youtube.com/watch?v=mMhfZiTzQ4E' David Hoffman <strong>Blocked because of Ad Blocker</strong> It seems that you are using some ad blocking software which is preventing the page from fully loading. Please whitelist this website or disable ad blocking software. find . -maxdepth 2 -name '*.mkv' -type f -exec bash -c 'audioformat=$(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=nw=1:nk=1 "{}")' \; find . -maxdepth 2 -name '*.mkv' -type f -exec bash -c 'echo "{}" $(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=nw=1:nk=1 "{}")' \; find . -maxdepth 2 \( -name '*.mkv' -o -name '*.mp4' \) -type f -exec bash -c 'echo "{}" $(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=nw=1:nk=1 "{}")' \; find . -maxdepth 2 - -type f -exec bash -c 'echo "{}" $(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=nw=1:nk=1 "{}")' \; find . -mount -depth -maxdepth 2 -regextype posix-extended -regex '.*mkv$|.*mp4$' -type f -exec bash -c 'echo "{}" $(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=noprint_wrappers=1:nokey=1 "{}")' \; | grep -v 'aac$' ffprobe -v error -select_streams a:0 -show_entries stream=channels,bit_rate -of default=noprint_wrappers=1:nokey=1 *.mp4 ffprobe -i input.mp4 -v quiet -print_format json -show_format -show_streams -hide_banner ./configure --enable-cuda-sdk --enable-cuvid --enable-nvenc --enable-nonfree --enable-libnpp --extra-cflags=-I/usr/local/cuda/include --extra-ldflags=-L/usr/local/cuda/lib64 ffmpeg -y -hwaccel cuvid -c:v h264_cuvid -vsync 0 -i ~/temp/input.mp4 -vf scale_npp=1920:1072 -vcodec h264_nvenc ~/temp/output0.264 -vf scale_npp=1280:720 -vcodec h264_nvenc ~/temp/output1.264 find . -mount -depth -maxdepth 1 -name '*HEVC*.mkv' -type f -exec bash -c 'ffmpeg -hwaccel_output_format cuvid -i "$0" -f srt -i "${0/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -movflags faststart -c:v h264_nvenc -preset slow -metadata:s:a:0 language=eng -c:a copy -metadata:s:s:0 language=eng -disposition:s:0 default -c:s srt "./working/${0/10bit.BluRay.AAC5.1.HEVC-Vyndros.mkv/BluRay.AAC5.1.x264.mkv}"' {} \; find . -mount -depth -maxdepth 1 -name '*HEVC*.mkv' -type f -exec bash -c 'ffmpeg -loglevel verbose -vsync 0 -hwaccel cuvid -hwaccel_output_format cuda -c:v hevc_cuvid -i "$0" -f srt -i "${0/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -movflags faststart -c:v h264_nvenc -preset slow -metadata:s:a:0 language=eng -c:a copy -metadata:s:s:0 language=eng -disposition:s:0 default -c:s:0 srt "./working/${0/10bit.BluRay.AAC5.1.HEVC-Vyndros.mkv/BluRay.AAC5.1.x264.mkv}"' {} \; find . -mount -depth -maxdepth 1 -name '*HEVC*.mkv' -type f -exec bash -c 'ffmpeg -loglevel verbose -vsync 0 -hwaccel cuvid -hwaccel_output_format cuda -c:v hevc_cuvid -i "$0" -f srt -i "${0/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -movflags faststart -c:v h264_nvenc -preset slow -metadata:s:a:0 language=eng -c:a copy -metadata:s:s:0 language=eng -disposition:s:0 default -c:s:0 srt "./working/${0/10bit.BluRay.AAC5.1.HEVC-Vyndros.mkv/BluRay.AAC5.1.x264.mkv}"' {} \; find . -mount -depth -maxdepth 1 -name '*HEVC*.mkv' -type f -exec bash -c 'ffmpeg -loglevel verbose -vsync 0 -hwaccel cuvid -hwaccel_output_format cuda -c:v hevc_cuvid -i "$0" -f srt -i "${0/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -movflags faststart -c:v h264_nvenc -pix_fmt yuv420p -preset slow -metadata:s:a:0 language=eng -c:a copy -metadata:s:s:0 language=eng -disposition:s:0 default -c:s:0 srt "./working/${0/10bit.BluRay.AAC5.1.HEVC-Vyndros.mkv/BluRay.AAC5.1.x264.mkv}"' {} \; # Nvidia hardware accelerated convert H.265 > H.264 find . -mount -depth -maxdepth 1 -name '*.mkv' -type f -exec bash -c 'ffmpeg -y -loglevel verbose -vsync 0 -hwaccel cuvid -hwaccel_output_format cuda -i "$0" -f srt -i "${0/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -movflags faststart -c:v h264_nvenc -preset slow -metadata:s:a:0 language=eng -c:a copy -metadata:s:s:0 language=eng -disposition:s:0 default -c:s:0 srt "./working/${0/x265/x264}"' {} \; find . -mount -depth -maxdepth 1 -name '*.mkv' -type f -exec bash -c 'ffmpeg -y -loglevel verbose -vsync 0 -hwaccel cuvid -hwaccel_output_format cuda -i "$0" -f srt -i "${0/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -movflags faststart -pix_fmt yuv420p -c:v h264_nvenc -preset slow -metadata:s:a:0 language=eng -c:a copy -metadata:s:s:0 language=eng -disposition:s:0 default -c:s:0 srt "./working/${0/x265/x264}"' {} \; 10 bit encode not supported Provided device doesn''t support required NVENC features Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height find . -mount -depth -maxdepth 2 -regextype posix-extended -regex '.*mkv$|.*mp4$' -type f -exec bash -c 'echo "{}" $(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=noprint_wrappers=1:nokey=1 "{}")' 2>/dev/null \; | grep -v 'aac$' find . -mount -depth -maxdepth 2 -regextype posix-extended -regex '.*mkv$|.*mp4$' -type f -exec bash -c 'echo "{}" $(ffprobe -loglevel error -select_streams v:0 -show_entries stream=codec_name -of default=noprint_wrappers=1:nokey=1 "{}")' 2>/dev/null \; | grep -v 'h264$' find . -mount -depth -maxdepth 2 -regextype posix-extended -regex '.*mkv$|.*mp4$' -type f -exec bash -c \ 'echo "{}" $(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=noprint_wrappers=1:nokey=1 "{}")' 2>/dev/null \; \ | grep -v 'aac$' for f in *.mkv; do audioformat=$(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=nw=1:nk=1 "$f") if ! [ "$audioformat" = "aac" ]; then echo -e '\nffprobe detected '$audioformat' in the default audio stream a:0\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -f srt -i "${f/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -c:v copy -ac 6 -ar 48000 -b:a 640k -metadata:s:a:0 language=eng -c:a aac -metadata:s:s:0 language=eng -disposition:s:0 default -c:s srt "${f/x264.mkv/aac.x264.mkv}" fi done for f in *.mkv; do audioformat=$(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=nw=1:nk=1 "$f") if ! [ "$audioformat" = "aac" ]; then echo -e '\nffprobe detected '$audioformat' in the default audio stream a:0\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -f srt -i "${f/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -c:v copy -ac 6 -ar 48000 -b:a 768k -metadata:s:a:0 language=eng -c:a aac -metadata:s:s:0 language=eng -disposition:s:0 default -c:s srt "./working/${f/x264.mkv/AAC x264.mkv}" fi done for f in *.mkv; do audioformat=$(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=nw=1:nk=1 "$f") if ! [ "$audioformat" = "aac" ]; then echo -e '\nffprobe detected '$audioformat' in the default audio stream a:0\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac 6 -ar 48000 -metadata:s:a:0 language=eng -c:a aac -c:s srt "${f/H264-GHOSTS.mkv/AAC-H264.mkv}" fi done for f in *.mkv; do audioformat=$(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=nw=1:nk=1 "$f") if ! [ "$audioformat" = "aac" ]; then echo -e '\nffprobe detected '$audioformat' in the default audio stream a:0\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac 6 -ar 48000 -b:a 384k -metadata:s:a:0 language=eng -c:a aac -c:s srt "./working/${f/x264-CRiMSON/AAC.x264}" fi done for f in *.mp4; do audioformat=$(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name -of default=nw=1:nk=1 "$f") if ! [ "$audioformat" = "aac" ]; then echo -e '\nffprobe detected '$audioformat' in the default audio stream a:0\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac 6 -ar 48000 -b:a 384k -metadata:s:a:0 language=eng -c:a aac -c:s srt "./working/${f/.mp4/ AAC x264.mp4}" fi done MARCH599COM location ~ ^/resume/trunyard_(\d+).(\w+)$ { return 301 https://travisrunyard.co/resume/travisrunyard_02092020.$2; } location ~ ^/wp-content/uploads/(\d+)/(\d+)/travisrunyard-resume(\d+).(\w+)$ { return 301 https://travisrunyard.co/resume/travisrunyard_02092020.$4; } certbot renew 2>&1 && @daily certbot renew 2>&1 && openssl pkcs12 -export -out /mnt/pool0/p0ds0smb/UserName/Documents/_secure/Certificates/SSL/travisflix.com/travisflix.com_$(date +%F).pfx -inkey /etc/letsencrypt/live/travisflix.com/privkey.pem -in /etc/letsencrypt/live/travisflix.com/fullchain.pem -passout pass:Password ; openssl pkcs12 -export -out /mnt/pool0/p0ds0smb/UserName/Documents/_secure/Certificates/SSL/blog.travisrunyard.us/blog.travisrunyard.us_$(date +%F).pfx -inkey /etc/letsencrypt/live/blog.travisrunyard.us-0001/privkey.pem -in /etc/letsencrypt/live/blog.travisrunyard.us-0001/fullchain.pem -passout pass:Password for f in *.mkv; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")) if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e '\nffprobe detected '${AUDIOFORMAT[0]}' in the default audio stream a:0 with '${AUDIOFORMAT[1]}' channels\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -disposition:s:0 default -c:s srt "/mnt/pool0/p0ds0smb/temp/ffmpeg/working/${f/DDP/AAC}" fi done for f in *.mp4; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")) if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e '\nffprobe detected '${AUDIOFORMAT[0]}' in the default audio stream a:0 with '${AUDIOFORMAT[1]}' channels\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -disposition:s:0 default -c:s srt "/mnt/pool0/p0ds0smb/temp/ffmpeg/working/${f/x264/AAC.x264}" fi done for f in *.mkv; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")) if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e '\nffprobe detected '${AUDIOFORMAT[0]}' in the default audio stream a:0 with '${AUDIOFORMAT[1]}' channels\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -disposition:s:0 default -c:s srt "/mnt/pool0/p0ds0smb/temp/ffmpeg/working/${f/DDP/AAC}" fi done FINDMEDIA=$(find /mnt/pool0/p0ds0smb/media/video-shows/Shameless\ \(US\)/Season\ 07 -depth -maxdepth 1 -regextype posix-extended -regex ".*mkv$|.*mp4$" -type f -print0 | xargs -0) for f in "$FINDMEDIA"; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")) if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e "\nffprobe detected ${AUDIOFORMAT[0]} in the default audio stream a:0 with ${AUDIOFORMAT[1]} channels\n\nPreparing to convert audio codec to AAC...\n" ; sleep 1 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -c:s copy "/mnt/pool0/p0ds0smb/temp/ffmpeg/working/${f/DD/AAC}" fi done /mnt/pool0/p0ds0smb/temp/ffmpeg/working FINDMEDIA=$(find /mnt/pool0/p0ds0smb/temp/ffmpeg/working/ -mount -depth -maxdepth 1 -regextype posix-extended -regex ".*mkv$|.*mp4$" -type f -print0 | xargs -0); for f in "$FINDMEDIA"; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")); if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e "\nffprobe detected ${AUDIOFORMAT[0]} in the default audio stream a:0 with ${AUDIOFORMAT[1]} channels\n\nPreparing to convert audio codec to AAC...\n" ; sleep 1; ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -c:s copy "${f/DD|DDP/AAC}"; fi; done FINDMEDIA=$(find /mnt/pool0/p0ds0smb/temp/ffmpeg/working -mount -depth -maxdepth 1 -regextype posix-extended -regex ".*mkv$|.*mp4$" -type f -print0 | xargs -0); for f in "$FINDMEDIA"; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")); if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e "\nffprobe detected ${AUDIOFORMAT[0]} in the default audio stream a:0 with ${AUDIOFORMAT[1]} channels\n\nPreparing to convert audio codec to AAC...\n" ; sleep 1; ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -c:s copy "${f/DD|DDP/AAC}"; fi; done FINDMEDIA=$(find /mnt/pool0/p0ds0smb/temp/ffmpeg/working/ -regextype posix-extended -regex ".*mkv$|.*mp4$" -type f -print); for f in "$FINDMEDIA"; do ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -c:v copy -ac 6 -ar 48000 -metadata:s:a:0 language=eng -c:a aac "./working2/${f}"; fi; done shopt -s globstar for f in **/*.mp4; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")) if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e '\nffprobe detected '${AUDIOFORMAT[0]}' in the default audio stream a:0 with '${AUDIOFORMAT[1]}' channels\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -sn "/mnt/pool0/p0ds0smb/temp/ffmpeg/working/$(basename "${f}")" fi done shopt -s globstar for f in **/*.mkv; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")) if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e '\nffprobe detected '${AUDIOFORMAT[0]}' in the default audio stream a:0 with '${AUDIOFORMAT[1]}' channels\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -disposition:s:0 default -c:s srt "/mnt/pool0/p0ds0smb/temp/ffmpeg/working/$(basename "${f}")" fi done shopt -s globstar for f in **/*.mkv; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")) if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e '\nffprobe detected '${AUDIOFORMAT[0]}' in the default audio stream a:0 with '${AUDIOFORMAT[1]}' channels\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -f srt -i "${f/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -metadata:s:s:0 language=eng -disposition:s:0 default -c:s srt "/mnt/pool0/p0ds0smb/temp/ffmpeg/working/$(basename "${f}")" fi done for f in **/*.mkv; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")) if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e '\nffprobe detected '${AUDIOFORMAT[0]}' in the default audio stream a:0 with '${AUDIOFORMAT[1]}' channels\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -f srt -i "${f/.mkv/.en.srt}" -map 0:v:0 -map 0:a:0 -map 1:0 -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -metadata:s:s:0 language=eng -disposition:s:0 default -c:s srt "/mnt/pool0/p0ds0smb/temp/ffmpeg/working/$(basename "${f}")" fi done shopt -s globstar for f in **/*.mkv; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")) if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e '\nffprobe detected '${AUDIOFORMAT[0]}' in the default audio stream a:0 with '${AUDIOFORMAT[1]}' channels\n\nPreparing to convert audio codec to AAC...\n' ; sleep 1 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -disposition:s:0 default -c:s srt "/mnt/pool0/p0ds0smb/temp/ffmpeg/working/$(basename "${f}")" fi done for f in **/*.{mp4,mkv}; do echo "$f"; done # Remember to include trailing slash in TEMPDIR TEMPDIR='/mnt/pool0/p0ds0smb/temp/ffmpeg/working/' shopt -s globstar for f in **/*.mkv; do AUDIOFORMAT=($(ffprobe -loglevel error -select_streams a:0 -show_entries stream=codec_name,channels -of default=nw=1:nk=1 "$f")) if ! [ "${AUDIOFORMAT[0]}" = "aac" ]; then echo -e '\nffprobe detected '${AUDIOFORMAT[0]}' in the default audio stream a:0 with '${AUDIOFORMAT[1]}' channels\n\nPreparing to convert audio codec to AAC...\n' ; sleep 2 ffmpeg -i "$f" -map 0:v:0 -map 0:a:0 -map 0:s? -c:v copy -ac ${AUDIOFORMAT[1]} -ar 48000 -metadata:s:a:0 language=eng -c:a aac -c:s copy "$TEMPDIR$(basename "${f}")" echo -e '\nMoving '$(basename "${f}")' back to source directory name '$(dirname "${f}")'\n'; sleep 2 mv -ufv "$TEMPDIR$(basename "${f}")" "$(dirname "${f}")" fi done ####################################### #!/bin/sh -- # The directory name that holds your movies. DIR="/tmp/movies" # Creating the subdirectory names that hold the result and the backup. for NEW in swf backup; do mkdir "${DIR}/${NEW}" || { echo "Could not create ${DIR}/${NEW}, exiting."; exit 1; } done # Start looping over files, tell what we do and log any output to screen and log. for MPEG in ${DIR}/*.mpg; do echo "Starting ${MPEG}" ffmpeg -i "${MPEG}" -ar 44100 -ab 192 "${DIR}/swf/${MPEG%.mpg}.swf" 2>&1 | tee -a "${DIR}/conversion.log" # If ffmpeg exited OK, then say it and move the original to the backup directory. if [ $? -eq 0 ]; then echo "Completed ${MPEG%.mpg}.swf"; mv "${MPEG}" ${DIR}/backup || { echo "Could not move ${MPEG}, exiting."; exit 1; } else # If ffmpeg failed, then say so and exit loop. echo "FAILED converting ${MPEG}, exiting."; exit 1; fi done # End of file loop # Exit. exit 0 ######################################### #!/bin/sh -- DIR="/tmp/movies"; for NEW in swf backup; do mkdir "${DIR}/${NEW}"; done for MPEG in ${DIR}/*.mpg; do ffmpeg -i "${MPEG}" -ar 44100 -ab 192 "${DIR}/swf/${MPEG%.mpg}.swf" \ >/dev/null 2>&1; [ $? -eq 0 ] && mv "${MPEG}" ${DIR}/backup; done; exit 0 ######################################### 7z a 4k-wallpaper.zip ./4k/ -mx0 ffmpeg -i As.Good.as.It.Gets.1997.BluRay.1080p.x264.YIFY.mp4 -filter:a "volume=1.5" ./working/As.Good.as.It.Gets.1997.BluRay.1080p.x264.YIFY.mp4 @reboot /bin/bash -c "screen -dmS onionshare /root/onionshare/dev_scripts/onionshare --stay-open --verbose /mnt/pool0/p0ds0smb/temp/4k 2>&1"