Skip to content

Instantly share code, notes, and snippets.

View palashkulsh's full-sized avatar
🍓
delusion of reprieve

palash kulshreshtha palashkulsh

🍓
delusion of reprieve
View GitHub Profile
@palashkulsh
palashkulsh / xml attributes to elements
Created October 1, 2020 20:38
convert xml attributes to elements
http://xsltfiddle.liberty-development.net/jyH9rLX
@palashkulsh
palashkulsh / find and rename folders and sub folders
Created November 28, 2020 09:46
rename folders and subfolders using find and rename
find . -maxdepth 2 -type d -exec rename 's/\/([1-9]\.)/\/0$1/g' {}/ \;
# it prepends zero in folder names
@palashkulsh
palashkulsh / video editing
Created January 22, 2021 14:01
video editing fast video
ffmpeg -i input.mkv -filter_complex "[0:v]setpts=<1/x>*PTS[v];[0:a]atempo=<x>[a]" -map "[v]" -map "[a]" output.mkv
eg.
ffmpeg -i input.mkv -filter_complex "[0:v]setpts=1/2*PTS[v];[0:a]atempo=2[a]" -map "[v]" -map "[a]" output.mkv
jira jql epictask -j 1 | jq '.[] | "\(.key),\(.fields.summary),\(.fields.created),\(.fields.updated)"'
@palashkulsh
palashkulsh / jq without cross product
Created May 9, 2022 15:30
extracting from jq without creating cross product
https://stackoverflow.com/questions/69973010/how-do-i-avoid-creating-a-cross-product-when-extracting-multiple-sub-elements-fr
cat /tmp/jira.txt | jq '.[] | {key} + (.changelog.histories[] | {created} + (.items[] | {field,fromString,toString})) | select (.field=="status")'
@palashkulsh
palashkulsh / jq_map_creation
Last active July 30, 2022 18:46
jq new usages
[{pincode:1,value:1},{pincode:2,value:2}]
to
{1:{pincode:1,value:1},2:{pincode:2,value:2}}
jq '.| map({(.pincode|tostring): .}) | add' IN.json > pincode_wise.json
@palashkulsh
palashkulsh / org2png
Last active September 4, 2022 20:26
org file to plantuml mindmap or work break down structure wbs diagram creator
#!/bin/bash
#identify is part of imagemagick suite
echo "@startmindmap" > /tmp/.org2file.uml
cat $1 >> /tmp/.org2file.uml
echo "@endmindmap" >> /tmp/.org2file.uml
#if -DPLANTUML_LIMIT_SIZE=18192 is not provided then image gets cropped off
java -jar /home/palashkulshreshtha/bin/plantuml.jar -DPLANTUML_LIMIT_SIZE=18192 -o /tmp/ /tmp/.org2file.uml
@palashkulsh
palashkulsh / ebs snapshot
Created September 8, 2022 12:15
ebs snapshot
aws ec2 describe-snapshots --filters Name=tag:Techteam,Values=mall-cart | jq '.Snapshots[] | "\(.SnapshotId),\(.VolumeId),\(.StartTime),\(.VolumeSize),\(.Tags[] | select(.Key=="Hostname") | .Value),\(.Description)"'
@palashkulsh
palashkulsh / excel option generator
Created November 20, 2022 14:27
generate excel worksheet with merged cell for each option
import xlsxwriter
from functools import reduce
# Create an new Excel file and add a worksheet.
workbook = xlsxwriter.Workbook('merge1.xlsx')
worksheet = workbook.add_worksheet()
# Create a format to use in the merged range.
merge_format = workbook.add_format({
If you want to find last value of the column
K1 is start of upper header, U6 is end of current row
we want to find header of last non empty column in a row (for K to U columns)
=ifna(index(filter($K$1:U6,not(ISBLANK(K6:U6))),1,counta(K6:U6)),"TBD")
This selects subset of non empty cells from K1 to U6 (from first row to current row)
FILTER AREA
=filter($K$1:U6,not(ISBLANK(K6:U6)))