copying open wifi networks/hot spots

ok,i was wantin to be able to save some wifi networks i have to a flash drive or to my home pc,is there a way to copy an open or a hot spot to a devise of some sort so i can always have wifi,for example,theres a library & a Walmart neighborhood market near me,can i copy a pice of there wifi to a devise so im able 2 have it all the time,or if i can copy this mobile hot spot device that the library were i live is doing,please let me know asap

copying files from pc to android denied with error message unsupported file type

so I bought an android phone (moto g6 plus with android 8) and I want to restore some files which I backed up from my older phone (moto g 1st gen).

I connect the phone to my PC (Windows) via a USB cable and enable in the phone: Use USB to: Transfer Files. I can send .mp3 files. I cannot send (paste) a .vcf file (my contacts) and I cannot .png images (screenshots). The message I get is:

The ... file type is not supported in this device. If it is a media file you may be able to use Windows Media Player to convert the file to a playable type prior to transfer. Do you wish to skip this file for now ? 

And I get a skip/skip all/cancel options only.

But I can get any file type from the phone and into my pc which is weird.

Am I doing something wrong ? How can I fix this ? (preferably without having to install another app).

Thank you in advance.

How to fix the “Overlapping accesses to ‘self’, but modification requires exclusive access; consider copying to a local variable” error in my code?

I can’t continue with my app and I can’t test run it because something is wrong in my code that I don’t know how to fix! Here is the code:

import Foundation  extension Array {     mutating func shuffle() {         if count < 2 { return }         for i in 0..<(count - 1) {             let j = Int(arc4random_uniform(UInt32(count - i))) + i              customSwap(a: &self[i], b: &self[j])         }     } }  func customSwap<T>(a:inout T, b:inout T) {     let temp = a     a = b     b = temp } 

How can I make sure my photos aren’t damaged after copying them from a faulty SD card?

I’ve copied pictures from my faulty SD card. Most of the photos seem to be ok, but some have big gray parts where originally the photo was.

How can I make sure that all the photos that seem to be ok, are really ok?

Can it be a problem to have damaged .jpegs in the same folder as the correct pictures?

What can I do about that? I want to lose as little as possible.

Add a new row to a spreadsheet, copying down formulas when a certain cell reaches a particular value

I’ve got a simple Google Sheet (it’s literally one line), that has in A2 =now() to calculate the current time, and then a series of formulas calculating various dates/times based on the current date in column A2 all the way to column R (column 18)

What I’d like to do is for when cell J2 reaches the value of “8” is to insert a new row and copy down the formulas from A2 to R2 into the new row, which would run every month.

How do I script this? I have no scripting experience.

I’ve been scouring the posts around here and have managed to cobble together some script that works:

 function copyFormatAndFormulas(rangeSource, rangeDestination) {    rangeSource.copyTo(rangeDestination, {formatOnly: true});    var formulas = rangeSource.getFormulasR1C1();    for(var x in formulas) {      for(var y in formulas[x]) {        if(formulas[x][y] == "") continue;        rangeDestination.getCell(parseInt(x) + 1, parseInt(y) + 1).setFormulaR1C1(formulas[x][y]);}}}   function addRow() {       var ss = SpreadsheetApp.getActive();     var NameofSpreadsheet = ss.getName();   // if(NameofSpreadsheet == 'Email Triggers') { //checks that we're on the correct sheet, although can't seem to get it working      var WorkingDaysLeft = 8;      var sheet = ss.getSheetByName('Email Triggers'); // the current sheet       var range = sheet.getRange(2,10,1,1); // looking for cell J2      var data = range.getValue(); // getting the value of cell J2      if (data == WorkingDaysLeft) { //checking the value of cell J2 to WorkingDaysLeft, if it equals 8 then run the next functions to insert new row and copy down formulas         var sh = ss.getActiveSheet(),//            lRow = sh.getLastRow();         var lCol = sh.getLastColumn(),            range = sh.getRange(lRow,1,1,lCol);        sh.insertRowsAfter(lRow,1);        var newRange = sh.getRange(lRow+1,1,1,lCol);        copyFormatAndFormulas(range, newRange);      }} 

I’d like to have a conditional IF statement to ensure that I am on the correct spreadsheet, as there are other sheets in the workbook. Any ideas what I’m doing wrong here?

Copying movie to USB drive

I own a movie which is currently on a Hard drive and I want to copy it onto the USB drive so that it can be played from either drive. When I try to copy it, the movie will not play which I assume is because the original file can not be found. Is there a way to have the movie be playable from both drives?

The movie is a 3GB file.

Serial copying from disk images to folder in Bash

This is a Bash script that copies files stored inside disk images to a directory, using a defined structure provided via a JSON file. I’ve included the external programs it requires and the test I used so that you can test it too.

Any comments regarding programming style and improvements are welcome.


The following is a Bash shell script that copies files stored inside disk images into a directory in the filesystem.

The script takes two parameters:

  • The first one is optional and defines a root directory (existing or not) that will contain the files being copied.
  • The second one, optional when the first one is given, is a path to a valid JSON-formatted file that describes:
    1. which disk images will be opened,
    2. which files inside each disk image will be copied, and
    3. which path inside the directory root will be used as the destination for the files being copied.

The first parameter defaults to the current directory when not given. The second one defaults to a file named steps.json located at the current directory. If the first parameter is not given, the second one can’t be either.


This script requires the following external programs to work correctly (installation instructions for Ubuntu are between parentheses):

  • The JSON parsing program jq (sudo apt install jq).
  • The disk image manipulation utility udisksctl (sudo apt install udisks2)


The complete script is below. It’s name is and should be marked as executable. It can be in any directory where it can be executed. For the purpose of the test below, it is placed in a directory where it can read and write.

#!/bin/bash  # Copying files contained inside disk images via JSON recipe. # logo_writer # December 12th, 2018  # Is a string contained in another? Return 0 if so; 1 if not. # By fjarlq, from contains() {     string="$  1"     substring="$  2"      if test "$  {string#*$  substring}" != "$  string"; then         return 0     else         return 1     fi }  # Obtain the absolute path of a given directory. # By dogbane, from abspath() {     dir="$  1"     echo "$  (cd "$  (dirname "$  dir")"; pwd -P)/$  (basename "$  dir")" }  # The main script starts here.  # If no first parameter is given, assume current directory. if [ -z "$  1" ]; then     DESTROOT="." else     # Omit any trailing slash     DESTROOT=$  (abspath "$  {1%/}") fi  # If no second parameter is given, assume file "steps.json". # If no first parameter is given, this can't be either. if [ -z "$  2" ]; then     CONF="./steps.json" else     CONF="$  2" fi  # Create the root directory where the files will the put. mkdir -p "$  DESTROOT"  # How many disks will be processed? LIMIT=$  (cat "$  CONF" | jq -r length)  i=0 while [ "$  i" -lt "$  LIMIT" ]; do     # For each disk, get its file name.     DISK=$  (cat "$  CONF" | jq -r .["$  i"].disk)      echo "$  DISK"      # Setup a loop device for the disk and get its name.     RES=$  (udisksctl loop-setup -f "$  DISK")     LOOP=$  (echo "$  RES" | cut -f5 -d' ' | head -c -2)      # Using the loop device obtained, mount the disk.     # Obtain the mount root directory afterwards.     RES=$  (udisksctl mount -b "$  LOOP")     SRCDIR=$  (echo "$  RES" | sed -nE 's|.*at (.*)\.||p')      # How many file sets will be copied?     NOITEMS=$  (cat "$  CONF" | jq -r ".["$  i"].files | length")     j=0     while [ "$  j" -lt "$  NOITEMS" ]; do         # For each file set, obtain which files will be copied and where.         FSRC=$  (cat "$  CONF" | jq -r .["$  i"].files["$  j"].src)         FDEST=$  (cat "$  CONF" | jq -r .["$  i"].files["$  j"].dest)          # Make the destination directory.         mkdir -p "$  DESTROOT"/"$  FDEST"          echo "    ""$  FSRC"          if contains "$  FSRC" "\*"; then             # If a wildcard is used in the file set, copy by file expansion (option -t).             pushd "$  SRCDIR" > /dev/null             cp -t "$  DESTROOT"/"$  FDEST" $  FSRC             popd > /dev/null         else             # Else, copy normally.             cp "$  SRCDIR"/"$  FSRC" "$  DESTROOT"/"$  FDEST"         fi          j=$  (($  j + 1))     done      # Once all the file sets are copied, unmount the disk     # and delete its associated loop device.     udisksctl unmount -b "$  LOOP" > /dev/null     udisksctl loop-delete -b "$  LOOP"      i=$  (($  i + 1)) done 

Test set

This script was tested with the following disk set: Microsoft C Compiler 4.0. The first 3 .img disks inside the ZIP (disk01.img, disk02.img and disk03.img) should be placed in the same directory the script is.

The corresponding JSON recipe used for the test is below. It’s named steps.json and placed in the same directory the script is for convenience.

[     {         "disk": "disk01.img",         "files": [             {                 "src": "*",                 "dest": "bin"             }         ]     },     {         "disk": "disk02.img",         "files": [             {                 "src": "*.EXE",                 "dest": "bin"             }         ]     },     {         "disk": "disk03.img",         "files": [             {                 "src": "LINK.EXE",                 "dest": "bin"             },             {                 "src": "*.H",                 "dest": "include"             },             {                 "src": "SYS/*.H",                 "dest": "include/sys"             },             {                 "src": "SLIBC.LIB",                 "dest": "lib"             },             {                 "src": "SLIBFP.LIB",                 "dest": "lib"             },             {                 "src": "EM.LIB",                 "dest": "lib"             },             {                 "src": "LIBH.LIB",                 "dest": "lib"             }         ]     } ] 

The test is performed by opening a terminal and executing the following command:

./ testing/

The command will output each disk image name as it is mounted, and under it the names of the files being copied (unexpanded), as follows:

disk01.img     * disk02.img     *.EXE disk03.img     LINK.EXE     *.H     SYS/*.H     SLIBC.LIB     SLIBFP.LIB     EM.LIB     LIBH.LIB 

The result will be a directory testing under where the script is with the following structure:

testing/ ├── bin │   ├── C1.EXE │   ├── C2.EXE │   ├── C3.EXE │   ├── CL.EXE │   ├── CV.EXE │   ├── EXEMOD.EXE │   ├── EXEPACK.EXE │   ├── LIB.EXE │   ├── LINK.EXE │   ├── MAKE.EXE │   ├── MSC.EXE │   └── SETENV.EXE ├── include │   ├── sys │   │   ├── LOCKING.H │   │   ├── STAT.H │   │   ├── TIMEB.H │   │   ├── TYPES.H │   │   └── UTIME.H │   ├── ASSERT.H │   ├── CONIO.H │   ├── CTYPE.H │   ├── DIRECT.H │   ├── DOS.H │   ├── ERRNO.H │   ├── FCNTL.H │   ├── FLOAT.H │   ├── IO.H │   ├── LIMITS.H │   ├── MALLOC.H │   ├── MATH.H │   ├── MEMORY.H │   ├── PROCESS.H │   ├── SEARCH.H │   ├── SETJMP.H │   ├── SHARE.H │   ├── SIGNAL.H │   ├── STDARG.H │   ├── STDDEF.H │   ├── STDIO.H │   ├── STDLIB.H │   ├── STRING.H │   ├── TIME.H │   ├── V2TOV3.H │   └── VARARGS.H └── lib     ├── EM.LIB     ├── LIBH.LIB     ├── SLIBC.LIB     └── SLIBFP.LIB 

Copying values between google sheets

I have 2 google sheets. I have data on google sheet A and I would like it to automatically transfer some values to google sheet b.

For example, I have some email addresses and some data associated with them organized by row. So one row corresponds to one email address. I want to be able to take the existing data (and any data I add) on sheet A and and have it automatically transfer certain values in sheet A to sheet B (matched by columns) such that if I input the email address on sheet B on an email address column in sheet B it will auto-populate values from cells corresponding to that email addresses row in sheet A. So once I insert the email address in sheet B it will take the corresponding name of that person in sheet A and input it in the name column I have in sheet B.

What type of function would I need to write for this?

Finder froze when copying large folder

I have a 1TB hard drive which I need to backup the info, so I copied all folders into another drive (4 TB) and after a full day of copying progress the Finder appears this way:

enter image description here

So it says “About 5 seconds remaining…” and the actual free size of the 4TB drive tells me the files are there, but as you can see in the picture most of the folders are greyed out, like if they were not there.

I want to know what can I do, someone knows what happens if I cancel the transfer?

My VBS Code is copying excel data as Image

I am trying to copy a data from a excel sheet to another macro enabled workbook with 6 sheets. I need to paste the value to 4th sheet. But the data is pasted as a image and not as value. Please assist:

Set objExcel = CreateObject(“Excel.Application”)

objExcel.Visible = True

Set objWorkbook = objExcel.Workbooks.Open(“D:\Input Files – SCB Life\Macro File for check\UP181207_SCBAM_B.xls”)

objRange = objWorkbook.Worksheets(“Fund Price”).UsedRange.Copy

Set objExcel2 = CreateObject(“Excel.Application”)

objExcel2.Visible = True

Set objWorkbook2 = objExcel2.Workbooks.Open(“D:\sample1.xlsx”) objWorkbook2.Worksheets(1).UsedRange.Clear objWorkbook2.Worksheets(1).Range(“A1”).PasteSpecial objRange

objWorkbook.Close objWorkbook2.Save objWorkbook2.Close